ポインタオブジェクトの2D配列をインスタンス化する方法を理解するのに苦労しています。これが私がそれをしている方法です:
Pieces* chessBoard[9][9];
実際のオブジェクトポインタに設定したい場合は、次のようにします。
chessBoard[1][1] = new Rook(p1Rook);
RookはPiecesクラスから属性を継承するクラスであり、p1Rookは「R」に設定されたchar変数です。このクラスは、特定のチェスの駒に固有のmove()やgetPiece()などの駒からの仮想関数(純粋仮想ではない)も実装します。ただし、プログラムをコンパイルすると、次のエラーが発生します。
ChessBoard.cpp:69: error: expected type-specifier before ‘Rook’
ChessBoard.cpp:69: error: cannot convert ‘int*’ to ‘Pieces*’ in assignment
誰かがこのかなり厄介な永続的なエラーを取り除くために私が何を変更すべきかを説明できますか?私はそれをお願い申し上げます。