static对象的高级用法
1. 函数里static对象是local的,其他如全局对象,类里的static对象都是非local的,会在程序初始化中提前创建
2. 非local的对象的创建无法确定先后次序,但能保证在main函数前即单线程阶段创建
3. 使用函数返回local static对象,可以保证每次调用返回的对象是已被创建的
3. 类里的static函数需要在函数外进行定义
4. 单件模式使用static对象,为了多线程安全,可在多线程阶段前就使用函数返回local static对象