结构元素C 的枚举
Enumeration of struct elements c++
我只是试图用C 创建几个结构元素的枚举(实际上它看起来更像C,因此,如果您有任何建议使其看起来更像C ,我'LL接受)。这是代码:
struct Vect
{
int x;
int y;
};
enum Direction
{
right = (Vect) {1, 0},
left = (Vect) {-1, 0},
down = (Vect) {0, 1},
up = (Vect) {0, -1}
};
我从g 中获得的错误是:"``正确''的枚举值不是一个整数常数"(对于其他人来说)。甚至有可能这样做吗?否则我可以找到另一种方法,但是我发现该解决方案非常优雅。
如果您想要的只是一堆Vect
类型的常数表达式,则可以定义它们如下:
namespace Direction
{
constexpr Vect right = { 1, 0 };
constexpr Vect left = {-1, 0 };
constexpr Vect down = { 0, 1 };
constexpr Vect up = { 0, -1 };
}
Vect
当您显示它是一种字面类型时,这就是可能的原因。
constexpr
。
相关文章:
- 在 C++ 中输出枚举类类型的向量元素
- 如何使用谷歌测试检查两个枚举类元素的相等性?
- std::初始值设定项列表来自现有的 std::array,而不枚举每个元素
- C++:如何将枚举元素设置为无限?
- 正确使用枚举元素
- 如何递归枚举每个元素都有上限的所有可能的数组
- 随机生成一个没有重复元素的枚举数组 (C++)
- 结构元素C 的枚举
- 以编程方式推断出枚举的大小,独立于其元素的价值
- 是否可以定义一个宏来定义枚举类和返回枚举元素计数的 GetCount() 方法
- 如何使用枚举元素创建对象
- 使用对其他枚举值的操作定义枚举元素值
- 宣布枚举以及是否在其元素上
- 如何使用 libclang 获取枚举元素的数值?
- 枚举元素定义
- 如何静态断言枚举元素的值
- 用于将枚举元素名称和值保存到文件的 C++ 宏
- 在c++中遍历非连续枚举元素
- 为什么我不能分配错误的枚举元素,但可以与错误的枚举元素进行比较?
- 删除枚举元素的重复项