C++ 当应用于命名空间范围内的类时,static意味着什么?

C++ 当应用于命名空间范围内的类时,static意味着什么?,c++,class,object,static,linkage,C++,Class,Object,Static,Linkage,我知道命名空间范围内的static表示“内部链接”。现在考虑下面的代码: static class Foo {} foo; static是否适用于Foo、Foo或两者?类Foo{}说明Foo变量的类型static使foostatic。它适用于类定义后声明的变量 在C++中,没有“代码>静态类< /代码>这样的东西。只有static对象和static函数。测试起来相当简单。。。删除foo并读取错误消息。static出现在更多的地方。例如,函数中的一个静态POD。@Lou:那是什么?解释一下。如何

我知道命名空间范围内的
static
表示“内部链接”。现在考虑下面的代码:

static class Foo {} foo;

static
是否适用于
Foo
Foo
或两者?

类Foo{}
说明
Foo
变量的类型
static
使
foo
static。

它适用于类定义后声明的变量


在C++中,没有“代码>静态类< /代码>这样的东西。只有
static
对象和
static
函数。

测试起来相当简单。。。删除
foo
并读取错误消息。static出现在更多的地方。例如,函数中的一个静态POD。@Lou:那是什么?解释一下。如何在函数中定义静态POD?int next(){static int mystatic=0;return my static++;}@Lou:它显示了什么?它不包含
静态
对象吗?我不是已经说过了吗?