기본적인 질문 포인터..

해봐의 이미지

class A
{
};

class B
{
.......
};

B에서 A에 대한 포인터를 담을수 있는 2차원 array를
HEAP에다가 생성하려면 어떻게 해야 되나요?

1차원 array의 경우

A** a = new A*[...]; 이렇게 하면 되던데..

2차원 array의 경우
A*** a = new A*[][]

이렇게 하면 컴파일이 안되네요

hey의 이미지

A** a = new A*[width * height];

이렇게 하시거나

A** a = new A*[width];
for (int i = 0; i < width; ++i) {
    a[i] = new A*[height];
}

이렇게 하세요.


----------------------------
May the F/OSS be with you..


flyingykk의 이미지

이렇게 하면 어떨까요?

A (*a)[10] = new A[5][10];  // A의 2차원 배열 생성

A *(*p)[10] = new A *[5][10];  // A형 포인터의 2차원 배열 생성