인스턴스의 포인터를 전역으로 접근하면서 오직 하나의 인스턴스만을 생성하는 것을 보장하는 패턴입니다. 역사상 가장 많이 미움을 받고 있는 디자인 패턴입니다. 패턴을 통틀어 구조적으로 가장 간단한 패턴입니다. 전역변수와 같은 역할을 하지만 호출 될때 객체를 만들 수 있어서 필요 할때만 만들 수 있습니다. 한 클래스의 인스턴스가 하나만 생기도록 하는 구현은 생각보다 까다롭다. 전역 객체는 초기화 순서가 정의 되어 있지 않습니다. 전역 객체가 다른 전역 객체를 참조 한다면 문제가 발생합니다. static Database database{}; 이 함수는 스레드 안전성이 C++11 이상 버전에서만 보증됩니다. Database& get_datatabase() { static Database database; retu..