我们可以在C++中使用静态类吗?

The*_*ner 1 c++

我只是想知道我们是否可以在C++中使用静态类.我的意思是我们可以在C++中将类声明为静态static class foo吗?我知道我们可以在C++中使用静态成员变量和静态成员函数,但我不确定静态类.

编辑:

我打算问一个类是静态的意思.

she*_*heu 8

编辑:好吧,我会停止马虎.

static存储类说明符.

  • 应用于变量,它指定对象的生命周期可见性 - 在这种情况下,生命周期是整个程序的执行,可见性仅限于特定的转换单元(通常是给定的源文件).
  • 应用于函数时,它类似地指定了对象的可见性 - 仅限于定义它的特定转换单元.
  • 应用于类成员变量和函数,它将变量定义为类的属性,而不是对象本身.

这就是半迂腐的定义.问题是,您希望将哪种语义附加到"静态类"的概念上?嵌套类自动具有类似静态的属性 - 它们是类的属性,而不是单个对象.如果您希望在外部作用域中声明的类具有类似静态的属性(即不与跨不同转换单元的单定义规则冲突),则可以使用匿名名称空间.


vmr*_*rob 6

static 关键字意味着它所引用的对象在整个程序的生命周期中都存在。类定义只是构造对象的大纲。

考虑到这一点,也许您可​​能希望执行诸如创建命名空间或创建单例对象之类的操作,该类旨在仅具有单个实例。