相关疑难解决方法(0)

为什么`std :: byte`是枚举类而不是类?

std::byte是一个抽象,它应该提供对C++内存区域的类型安全(r)访问,从新标准17开始.但是,它是根据http://en.cppreference.com/w/cpp这样声明的./ types/byte:

enum class byte : unsigned char {} ;
Run Code Online (Sandbox Code Playgroud)

也就是说,它enum class 没有任何枚举.由于通常的目的enums是提供一组有限的枚举,这似乎有点奇怪.具有私有unsigned char成员的类似乎是更明显的方法.

为什么这样做?

c++ c++-standard-library c++17

18
推荐指数
1
解决办法
854
查看次数

与常规枚举相比,c ++枚举结构的大小是否更大?

与常规枚举相比,C++枚举结构(类)的大小是否更大?即什么转换为更多字节的指令代码假设它们枚举相同的确切数据?

我正在嵌入式环境中开发,这个问题有点重要.我喜欢使用枚举结构允许的类型安全和范围,但不是代价膨胀.

c++ enums

4
推荐指数
1
解决办法
108
查看次数

标签 统计

c++ ×2

c++-standard-library ×1

c++17 ×1

enums ×1