1

Boardと呼ばれるポインターのポインター配列を含むクラスがありますSpace** bo。各ポインターはクラスのインスタンスを指しますSpace。から継承し、からSnakesAndLaddersSpace継承するという派生クラスがあります。SpaceSnakesAndLaddersBoardBoard

基本的に、私のSnakesAndLaddersBoardクラスではSpace** bo、継承する をに変更したいのですがSnakesAndLaddersSpace** bo、どうすればよいですか?

SnakesAndLaddersBoardこれは私がクラスでやっていることです

SnakesAndLaddersBoard::Board::Board(int w, int h)
{ 
    width=w;
    height=h;//set up the size of the board

    bo = new SnakesAndLaddersSpace*[height];  // <<-- error
    for(int i = 0; i < height; i++)
    {
        bo[i] = new SnakesAndLaddersSpace[width]; 
    }
}

そして、ここに私が得ているエラーがあります

SnakesAndLaddersBoard.cpp|13|エラー: 'SnakesAndLaddersSpace* ' から 'Space *' への無効な変換 [-fpermissive]|

4

2 に答える 2

-1

意味がありません...新しい変数を作成している場合は、コンストラクターを呼び出すべきではありませんか? bo[i]= 新しい SnakesAndLaddersSpace(width); ..?

于 2013-04-27T14:55:04.597 に答える