C++ 在声明静态成员时是否创建实例

does c++ create an instance when declare a static member?

本文关键字:是否 创建 实例 静态成员 声明 C++      更新时间:2023-10-16

C++ 在声明静态成员时会创建实例吗?
我认为这是一个概念问题,也许。我不太确定。
我的意思是,当我声明一个内部带有静态成员的类时,静态成员是否有真正的空间?据我所知,静态成员在一个类中只能唯一退出一次。在我声明之后,静态空间和函数是否存在?如果是这样,这是否意味着我可以在不定义真实对象的情况下调用函数(静态?)?谢谢

  1. 是的,如果您声明static成员,则存在它的实际空间。 从这个意义上说,它基本上就像一个全局变量,除了它可以访问的有限范围。

  2. 是的,您可以在不创建实例的情况下调用static函数。

实际上类的实例永远不会自动创建。但即使在创建实例之前,您也可以调用该变量...静态成员单独处理为类的所有实例通用的。