是否有__attribute __((packed))的C ++ 11/14替代方案

时间:2015-11-16 14:08:33

标签: c++ c++11 gcc clang c++14

C ++ 11引入了标准化属性语法的概念。我找不到所有支持的属性的列表。是否有__attribute__((packed))的C ++ 11属性替换?

e.g。

struct __attribute__((packed)) Pack {
   uint8_t field1;
   uint8_t field2;
};

1 个答案:

答案 0 :(得分:13)

不幸的是,没有。标准当前定义的属性是:

  • @Root(name="Product") public static class Product { @ElementArray(name = "Value") public String[] value; @Element(name = "Id") public String id; } ;
  • [[noreturn]];
  • [[carries_dependency]] / [[deprecated]];

其他所有内容都是实现定义的。