C++ 类模板实现通用动态数组:存储、访问、查找最大值和最小值
#include <iostream>
using namespace std;
template<typename T>
class DynamicArray {
private:
T* arr; // 指向动态数组的指针
int size; // 数组大小
public:
// 构造函数
DynamicArray(int s = 0) {
size = s;
arr = new T[size];
}
// 析构函数
~DynamicArray() {
delete[] arr;
}
// 获取数组大小
int getSize() const {
return size;
}
// 获取指定位置的元素
T& operator[](int index) {
return arr[index];
}
// 查找数组中最大值
T getMax() const {
T maxVal = arr[0];
for (int i = 1; i < size; i++) {
if (arr[i] > maxVal) {
maxVal = arr[i];
}
}
return maxVal;
}
// 查找数组中最小值
T getMin() const {
T minVal = arr[0];
for (int i = 1; i < size; i++) {
if (arr[i] < minVal) {
minVal = arr[i];
}
}
return minVal;
}
};
int main() {
DynamicArray<int> arr(5);
for (int i = 0; i < arr.getSize(); i++) {
arr[i] = i + 1;
}
cout << '数组中的元素为:';
for (int i = 0; i < arr.getSize(); i++) {
cout << arr[i] << ' ';
}
cout << endl;
cout << '数组中的最大值为:' << arr.getMax() << endl;
cout << '数组中的最小值为:' << arr.getMin() << endl;
return 0;
}
原文地址: https://www.cveoy.top/t/topic/nS1y 著作权归作者所有。请勿转载和采集!