0
看看下面這個例子象棋的設計問題
class Player {
ChessEngine* ce;
public:
makeMove() {
ce.addMove();
}
};
class ChessEngine {
Player* p1;
list<move*> moveList;
public:
ChessEngine() {
p1 = new Player;
}
Player* getPlayer() {
return p1;
}
void addMove() {
}
};
int main()
{
ChessEngine chessEngine1;
return 0;
}
我進行了重組,以便它可以被理解的問題。 這裏ChessEngine知道Player來調用makeMove。
玩家需要調用對象chessEngine的addMove。 我的問題是如何將** ChessEngine * ce屬性的類Player *初始化爲指向對象chessEngine1的指針?