c++实现含排序功能的数组类
时间: 2023-11-09 12:04:41 浏览: 48
下面是一个简单的C++数组类,它具有排序功能:
```cpp
#include <iostream>
using namespace std;
class Array {
private:
int size;
int *data;
public:
Array(int n) {
size = n;
data = new int[size];
}
~Array() {
delete[] data;
}
void setData() {
for (int i = 0; i < size; i++) {
cout << "Enter data[" << i << "]: ";
cin >> data[i];
}
}
void printData() {
for (int i = 0; i < size; i++) {
cout << data[i] << " ";
}
cout << endl;
}
void bubbleSort() {
for (int i = 0; i < size - 1; i++) {
for (int j = i + 1; j < size; j++) {
if (data[i] > data[j]) {
int temp = data[i];
data[i] = data[j];
data[j] = temp;
}
}
}
}
};
int main() {
int n;
cout << "Enter size of array: ";
cin >> n;
Array arr(n);
arr.setData();
cout << "Array before sorting: ";
arr.printData();
arr.bubbleSort();
cout << "Array after sorting: ";
arr.printData();
return 0;
}
```
这个类有一个构造函数,它接受一个整数参数来指定数组的大小。它还有一个析构函数,它释放了动态分配的内存。
这个类有三个公共成员函数:setData()函数用于从用户输入中设置数组元素,printData()函数用于打印数组元素,bubbleSort()函数用于对数组进行冒泡排序。
在main()函数中,我们首先从用户输入中获取数组的大小,然后创建一个Array对象。接下来,我们调用setData()函数来设置数组元素,然后使用printData()函数打印未排序的数组。最后,我们调用bubbleSort()函数来对数组进行排序并再次使用printData()函数打印已排序的数组。