static对象的高级用法

时间:2022-07-05 11:27:52

1. 函数里static对象是local的,其他如全局对象,类里的static对象都是非local的,会在程序初始化中提前创建

2. 非local的对象的创建无法确定先后次序,但能保证在main函数前即单线程阶段创建

3. 使用函数返回local static对象,可以保证每次调用返回的对象是已被创建的

3. 类里的static函数需要在函数外进行定义

4. 单件模式使用static对象,为了多线程安全,可在多线程阶段前就使用函数返回local static对象