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的指针?