.h 文件
public:
Class(int x, int y); //constructor for this question
private:
char (*1dArrayObjectPtr)[size] = nullptr;
char nameof2dArray[notImportantX][size];
初始化然后分配有什么区别Class (*1dArrayObjectPtr)[size] = nullptr;
:
.cpp 文件
Class::Class(int x, int y) : x(x), y(y) {1dArrayObjectPtr = nameOf2dArray;};
或者:
Class::Class(int x, int y) : x(x), y(y), 1DArrayObjectPtr(nameof2dArray) {};
为什么当我访问时顶部选项会导致分段错误而底部不会:
*(*(1DArrayObjectPtr+i)+j)
或者
1DArrayObject[i][j]
如果我传递1DArrayObjectPtr
给一个新类,我是否能够迭代相同的?:
newClass::newClass(char* 1DArrayObjectPtr) : newClassPtr(1DArrayObjectPtr) {};
迭代为*(*(newClassPtr+i)+j)
或 newClassPtr[i][j]
还是我将 1dpointer 从 2D 数组更改为其他东西而没有意识到?