【发布时间】:2011-12-25 12:22:06
【问题描述】:
在 C++ 中声明类定义时不完整类型的静态字段是否合法?例如:
Foo.h:
class Foo
{
public:
// ...
private:
class Bar;
static Bar something;
};
Foo.cpp:
class Foo::Bar
{
// ...
};
Foo::Bar Foo::something;
// some more code
编译器似乎接受它,我看不出有什么理由拒绝它,但标准对这种情况有什么看法?我非常感谢有人直接引用标准,最好是“旧”标准(2003 年的标准)。
【问题讨论】:
标签: c++ static incomplete-type