单例模式中的懒汉模式,有两个小问题。(1)锁的问题,锁是一种竞争资源,既然是竞争那么大家都应该知晓它的存在,C语言一般喜欢用全局变量--pthread_mutex_t来处理,博主的锁是对象私有--以至于每个对象都有自己的锁,这违背了锁的基本概念。C++不太推荐全局变量,因为类中static也可以达到共享目的,所以应该把pthread_mutex_t定义成类中的static成员变量(2)单例模式不允许外部使用new来创建对象,这里使用的是指针,需要使用delete,不然内存泄漏,但是用的static修饰的啊?其实混淆了基本概念,指针指向一片内存,我们关心的是指向的内存,delete可以把指向的那片内存释放,至于指针本身--它在栈区、全局区os会自动清理
点赞

相关推荐

牛客网
牛客企业服务