如何访问 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) 方法来确保其他代码不会干扰您的指针。