#include
#include
class Array
{
public:
/*构造函数
*/
Array(int b[], int length)
{
m_array = new int[length];
::memcpy(m_array, b, sizeof(int) * length);
m_length = length;
}
/**复制构造函数
*/
Array(const Array& arr)
{
m_array = new int[arr.m_length];
::memcpy(m_array, arr.m_array, sizeof(int) * arr.m_length);
m_length = arr.m_length;
}
/**析构函数
*/
~Array()
{
delete[] m_array;
}
/**降序排序,选择排序
*/
void sort()
{
for (int i = 1; i < m_length; i++)
{
for (int j = i; j < m_length; j++)
{
if (m_array[i - 1] < m_array[j])
{
int temp = m_array[i - 1];
m_array[i - 1] = m_array[j];
m_array[j] = temp;
}
}
}
}
/**打印
*/
void print()
{
for (int i = 0; i < m_length; i++)
printf("%d ", m_array[i]);
printf("\n");
}
private:
int *m_array;
int m_length;
};
int main()
{
int a[10] = { 7, 6, 8, 3, 4, 5, 9, 0, 1, 2 };
Array test(a, 10);
test.print();
test.sort();
test.print();
return 0;
}
看不清
哪里不会?这么长的题,都不会?