gpt4 book ai didi

c++ OOP 设计-将数据成员传递给其他类-是否合理?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:21:56 24 4
gpt4 key购买 nike

<分区>

我还有一个问题希望总结一下我的想法。

假设我有以下 3 个类:

类玩家:

class Player {
private:
int positionX, positionY;
public:
void move(Board& b) {
// player changes its position on the board(move)
b.removeCharFromBoard(positionX, positionY);
positionX++;
positionY++;
// 'P' indicates a Player in the Board....
b.insertCharToBoard(positionX, positionY, 'P');
}
};

类板:

class Board {
private:
// BOARD_C and BOARD_R are both "#define ..." for some integer number.
char board[BOARD_C][BOARD_R];
};

游戏引擎类:

class GameEngine {
private:
Board* board;
public:
void playTurn(const Player& p) {
p.move(board);
}
};

在您看来,GameBoard 的 playTurn 函数将使用参数“board”调用 Player 的移动函数是否合理?我需要这样做,以便在棋盘数据成员中标记玩家已经改变了他的位置。它是否保持 OOP 的基本规则?

谢谢大家辛迪加!

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com