首页 > 代码库 > C++ Daily 《6》---- 类静态对象与函数静态对象

C++ Daily 《6》---- 类静态对象与函数静态对象

C++ 的一个哲学基础是,你不应该为你使用的东西付出代价。

class 拥有一个 static 成员,即使从未被用到,它也会被构造和析构;

而 函数拥有一个 static 成员, 如果这个函数从未被调用,则这个对象不会被构造。


做个简单的实验:

<script src="https://code.csdn.net/snippets/342189.js" type="text/javascript"></script>
结果是没有调用构造函数,因为 thePrinter函数并没有被调用。


相反,类中的一个static 成员,一定会被构造,

<script src="https://code.csdn.net/snippets/342199.js" type="text/javascript"></script>
因为类的static 成员独立于对象而存在,因此无论是否定义了这个类的对象,
static 成员都会构造出来。