안녕하세요.. c++ 기초질문입니다.. 

C++ 에서 동적으로 생성하는 2차원 포인터배열을 이렇게도 선언할수 있나요? 

class Cell // 세포 한개를 표현하는 클래스 
{
        public:
                CCell() { } 
                ~CCell() { }
                void Init() { ... // 멤버변수 초기화 }
                void SetXCoordinate(int x) { m_x_coordinate = x; }
                void SetYCoordinate(int y) {  m_y_coordinate = y; }
                void SetColor(int ColorNo) { m_CellColorNo = ColorNo; }
        private:
                int m_x_coordinate;
                int m_y_coordinate;
                int m_CellColorNo;
};

class CellManager // 동적 2차원 세포클래스 포인터배열을 관리하는 클래스 
{
        public:
                CellManager() 
                
                        m_CellArray = new Cell * [50][50];
                        // 이차원 세포 클래스배열 초기화
                }
                ~CellManager() { }
                void Initialize() 
                {
                         for(int i=0; i<50; ++i)
                        {
                                for(int j=0; j<50; ++j)
                                {
                                        m_CellArray[i][j].SetXCoordinate(i);
                                        m_CellArray[i][j].SetYCoordinate(j);
                                        m_CellArray[i][j].SetColorNo(1);
                                }
                        }
                }
        private:
                Cell * (*m_CellArray)[50]; // 이차원 세포 클래스 포인터배열 선언 
};