【发布时间】:2011-01-18 10:14:18
【问题描述】:
我不知道这是否可行,但我想编写一个宏 在堆栈上声明一个可变长度的结构。我想做这样的事情:
#define STATICLIST(max) struct SStaticList { int iSize; id iObjects[max]; }
然后这样称呼它:
STATICLIST(32) Size32List
STATICLIST(64) Size64List
但是我收到了重新声明 struct SStaticList 类型的错误
【问题讨论】:
-
不管怎样,C++ 模板都很好地支持这种事情。 :)
-
我知道我知道我一直是 C++ 程序员,但我现在正在为 iPhone 开发,我不喜欢混合使用 C 和 C++。
-
顺便说一句,我认为
iSize字段的正确类型是size_t。
标签: c list variables macros declaration