使用具有相同价值的枚举来进行不同的结果?C
Using enums with the same value for different outcomes? C++
快速问题(也仍然是菜鸟,所以也可能很容易答案..)任何人,我正在从事战舰游戏,我的枚举显示了板子,无论是命中还是错过等等。
enum class EnemyPiece : char{
SHIP = '?', // when read this comes out as EMPTY
HIT = 'X',
MISS = ' ',
EMPTY = '?'
}
目的是,在显示板时,我希望它显示板的枚举,但我不希望玩家知道船只在哪里,所以我希望他们掩盖为空。
有点像,董事会知道那里有一艘船,但显示为空,直到玩家正确地猜测。
edit ::对不起,问题是,如何使枚举显示为空,但是当检查时,枚举实际上是运送的
您必须像
一样编写显示功能enum class EnemyPiece : char{ SHIP, HIT, MISS, EMPTY };
char getCharForDisplay(EnemyPiece e)
{
switch (e) {
case EnemyPiece::SHIP: return '?';
case EnemyPiece::EMPTY: return '?';
case EnemyPiece::HIT: return 'X';
case EnemyPiece::MISS: return ' ';
}
}
相关文章:
- 不带大括号的枚举形式
- 枚举环境变量的惯用C++14/C++17方法
- 类似枚举的计算常量
- 如何正确实现和访问运算符的各种自定义枚举器
- 错误:从"int"到枚举c++的转换无效
- C++中构造函数中的枚举
- 访问在 C++ 结构中声明的枚举变量
- 枚举类'classname'的多重定义
- 强枚举类型定义:Clang Bug 还是 C++11 标准不确定性?
- typedef 枚举和枚举类有什么区别?
- 为什么我的开关/机箱在使用枚举时默认?
- 标准::可选枚举的比较运算符
- C++两个源文件之间共享的枚举的静态实例
- 打印没有铸件的枚举可以在C++中吗?
- 枚举成员与静态 int 成员?
- C++:枚举:错误:应使用标识符而不是"}"
- 使用枚举确定返回结果的类型(使用宏的黑客)
- C++运算符和带枚举的计算结果为 false
- 使用具有相同价值的枚举来进行不同的结果?C
- C++枚举的计算结果为意外值