2014-01-26 92 views
0

行我有这样分配内存中创建一个类中的动态矩阵:C++指针的动态矩阵

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是指向第一行的指针,但我不知道如何调用指向其他行的指针

+1

ooh三星程序员...无论如何,尝试一个'std :: vector'存储。 –

回答

3

*m是指向行索引0的确如此,但*m相当于m[0]。所以对于其他索引使用m[index]