提示,定義一個數組,定義Add IndexOf GetLength三個函數。當數組容納不下的時候,要求能夠擴充數組。編寫一個主程序調用如上功能,並且實現對數組的遍歷。
#include <iostream>
using namespace std;
class List
{
private:
int * arr;
int length;
int arrsize;
public:
List()
{
arrsize = 10;
arr = new int[arrsize];
}
void Add(int value)
{
if (length == arrsize)
{
int oldsize = arrsize;
int * oldarr = arr;
arrsize += 10;
arr = new int[arrsize];
memset(arr, 0, arrsize);
memcpy_s(arr, arrsize * sizeof(int), oldarr, oldsize * sizeof(int));
delete[](oldarr);
}
length++;
arr[length - 1] = value;
}
int GetLength()
{
return length;
}
int IndexOf(int index)
{
return arr[index];
}
};
int main(int argc, _TCHAR* argv[])
{
List list = List();
for (int i = 0; i < 35; i++)
{
list.Add(i);
}
for (int i = 0; i < list.GetLength(); i++)
cout << list.IndexOf(i) << endl;
return 0;
}