반응형
싱글톤 패턴이란, 프로그램을 실행한 후 딱 한번! 초기화를 시킨 후, 프로그램 전체에서 사용할 수 있도록 만든 패턴을 말한다.
Sound, Menu, Option 등 프로그램 어디서나 접근해야 하는 기능을 싱글톤으로 만드는 경우가 많다.
보통 게임에서는 Manager 관련 기능이 해당된다.
싱글톤 패턴으로 사용할 클래스와 사용될 변수는 반드시 static 변수로 선언하여야 한다.
static으로 선언하는 이유는 생성 또는 수정한 값이 유지되고, 어떤 파일에서나 사용할 수 있도록 하기 위함이다.
중요!! .cpp에서 선언한 static 변수는 .h 파일에서 사용 할 수 없고, .h 파일에서 선언한 static 변수는 .cpp 파일에서 사용할 수 없다.
때문에 static 변수는 .h 파일과 .cpp 파일에 대해서 각 각 변수의 범위가 지정되므로, .cpp 파일에서 사용할 static 변수를 선언 및 초기화 하여 .h 파일에 있는 static 변수를 .cpp 파일에서 연결해 줄 필요가 있다. (.cpp 파일 3번 줄)
싱글톤 패턴으로 사용할 클래스는 GetInstance() 함수와 같은, 전역에 존재하는 static 변수를 불러와 사용해야 한다.
반응형
'프로그래밍 끄적 > 디자인 패턴 (Design Pattern)' 카테고리의 다른 글
[디자인 패턴] 가교 패턴 (Bridge Pattern) (0) | 2018.06.13 |
---|---|
[디자인 패턴] 어댑터 패턴 (Adapter Pattern) (0) | 2018.06.13 |
[디자인 패턴] 프로토 타입 패턴 (Prototype Pattern) (0) | 2018.05.14 |
[디자인 패턴] 팩토리 메서드 패턴 (Factory Method Pattern) (0) | 2018.05.07 |
[디자인 패턴] 빌더 패턴 (Builder Pattern) (0) | 2018.05.07 |