PS:对于内部静态实例的懒汉模式,需要注意的是,C++0X以后,要求编译器保证内部静态变量的线程安全性,可以不加锁。但C++ 0X以前,仍需要加锁。(C++0X即现在的C++11)
http://blog.csdn.net/wh_2396/article/details/53616483
http://blog.csdn.net/q_l_s/article/details/52369065
https://www.cnblogs.com/qiaoconglovelife/p/5851163.html
总结:懒汉和饿汉核心的区别在于变量是否是优先定义,如果优先定义就是饿汉,如果调用时定义则为懒汉,而优先定义的方式,一般采用成员static指针变量,然后全局定义分配空间,那么此时单例是完全线程安全的,如上链接2。