2014-01-19 44 views

回答

1
#include <boost/utility.hpp> 

class singleton : private boost::noncopyable { 
public: 
    static singleton& instance() { 
     static singleton inst; 
     return inst; 
    } 

private: 
    singleton() = default; 
    ~singleton() = default; 
}; 

本地靜態變量的構造保證是線程安全的。

另外,不惜一切代價避免單身。它們和全局變量一樣可怕。

+0

幾乎等同於上面爲C.寫的文章中的例子。 – Peter