1
我有更多或更少的遵循该图案的结构:C++初始化包含数组
struct sTruct {
int count;
struct {
int A;
int B;
int C;
} array[]; //count is the size of this array
};
我想能够与类似以下语法来初始化这些:
sTruct gInit1 = { 2, { {1,2,3},{4,5,6} }};
真的,初始化语法(或者说它的紧凑性)比特定的结构布局更重要。我无法访问标准容器(嵌入式平台),但如果需要,我可能能够复制它们的一些行为。
在最终形式中,我想一次初始化大约300个这些sTruct容器的数组,只是为了添加更多级别的括号。
我想填充不同大小的sTructs到同一个数组中并没有太大的意义。我可能会使用类似这样的模板,尽管我仍然需要将“size”变量本身添加到外部结构中。 – jkerian 2010-12-17 17:40:12
如果你喜欢这个答案,你可以使用boost :: array。这或多或少正是我的答案,但可以容纳任何东西并像标准容器一样行为(除非它具有静态大小,并且可以使用聚合语法进行初始化)。 – 2010-12-17 17:46:14