我在以这种方式分配内存创建的类中有一个动态矩阵:
int **m; //this in the member head pointer
void allocate_mem(int ***ptr, unsigned r, unsigned c){
*ptr = new int *[r];
(*ptr)[0] = new int[r*c];
for(unsigned i = 1; i < r; i++)
(*ptr)[i] = (*ptr)[0] + i*c;
}
如何调用指向行的指针?我的意思是,m是指向指针数组的指针,*m是指向第一行的指针,但我不知道如何调用指向另一行的指针
最佳答案
*m
确实是指向索引为 0 的行的指针,但是 *m
等同于 m[0]
。所以对于其他索引使用 m[index]
关于c++指向动态矩阵中行的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21366301/