条款4:确定对象使用前被初始化
包括内置类型,对象。
但问题是不同编译单元之间的初始化。
指全局对象,如static等。
不可能确定其初始化顺序。
可以用单例,如在函数里返回函数static成员的引用。
只在第一次调用时初始化。
注意:多线程调用,最好在启动时一起初始化。调用时内部加锁,这是一种方案。
总结:手工初始内置类型。构造函数尽量使用成员初始化列表。跨单元初始化可用单例。
【本文章出自博客园willaty,转载请注明作者出处,误差欢迎指出~】
包括内置类型,对象。
但问题是不同编译单元之间的初始化。
指全局对象,如static等。
不可能确定其初始化顺序。
可以用单例,如在函数里返回函数static成员的引用。
只在第一次调用时初始化。
注意:多线程调用,最好在启动时一起初始化。调用时内部加锁,这是一种方案。
总结:手工初始内置类型。构造函数尽量使用成员初始化列表。跨单元初始化可用单例。