如何访问 class 构造函数中的动态数组?
How to access dynamic array inside a class constructor?
如何访问动态数组并为其设置值?例如 array[size] = {8, 4, 3, 2, ...}
class Array
{
public:
Array(int sze)// default constructor
{
size = sze;
ptr = new int [size];
}
private:
int size; // number of elements in the Array
int *ptr = 0; // address of dynamically allocated memory
};
int main()
{
Array arry(10);
cout << arry.getSize();
//.....;
}
您创建的数组是 private
,要访问它,您必须提供访问器方法:
public:
...
int* getPtr() { return ptr; }
...
int *ptr = arry.getPtr();
ptr[0] = 1;
cout << ptr[0];
或者您可以隐藏指针本身并提供 get(position)
和 set(position)
方法来确保其他代码不会干扰您的指针。
如何访问动态数组并为其设置值?例如 array[size] = {8, 4, 3, 2, ...}
class Array
{
public:
Array(int sze)// default constructor
{
size = sze;
ptr = new int [size];
}
private:
int size; // number of elements in the Array
int *ptr = 0; // address of dynamically allocated memory
};
int main()
{
Array arry(10);
cout << arry.getSize();
//.....;
}
您创建的数组是 private
,要访问它,您必须提供访问器方法:
public:
...
int* getPtr() { return ptr; }
...
int *ptr = arry.getPtr();
ptr[0] = 1;
cout << ptr[0];
或者您可以隐藏指针本身并提供 get(position)
和 set(position)
方法来确保其他代码不会干扰您的指针。