c++ - 当我告诉它停止时,为什么程序会继续运行?

标签 c++

我正在努力用 C++ 创建一个小的 Blackjack 控制台游戏。我已经写了几乎所有的代码(你可能会觉得它很乱,但我好像没有这方面的经验)。它有效,但不完全。如您所知(或不知道),当您的牌值等于 21 时,您就赢得了比赛,如果您的牌值更多,您就输了。在我的项目中,游戏永远不会停止,当您拿到 21、当庄家拿到 21 或当您放弃 21 时,游戏仍在继续。也许我忘了添加一些东西,如果你能指出来我会很高兴! :) CODE

最佳答案

在您的 main() 函数中,您正在定义一个新的本地状态变量:

GAMESTATE GSState = GAME;

它隐藏了您的其他类正在更新以指示游戏结束的全局类。

你应该只给它赋值:

GSState = GAME;

使用 gcc,如果您希望编译器警告您这种潜在的错误(但可能会有很多误报),您可以使用标志 -Wshadow 进行编译。

关于c++ - 当我告诉它停止时,为什么程序会继续运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10033093/

相关文章:

c++ - 如何将字符串类型的路径传递给 boost::filesystem:path 的构造函数?

c++ - vector 操作

c++ - 为什么 pthread_create() 有时会在 Cygwin 端口上给出 EAGAIN?

c++ - 什么是 string::find(char c) 应该在 C++ 中返回

c++ - 选择排序升序

c# - 我可以缓存的最大值是多少?

C++ makefile 同时分离声明和实现

c++ - auto c++ 关键字有什么作用?

c++ - 存储 FIX 消息的最佳数据结构是什么?

c++ - 如何将文本添加到 QTextEdit 的顶部