개발자_이훈규
천천히, 빠르게. 개발자의 Repository
개발자_이훈규
전체 방문자
오늘
어제
  • 분류 전체보기 (473)
    • 티스토리 (4)
    • 개발자 뉴스 (2)
    • 소프트웨어 (203)
      • C (7)
      • c++ (25)
      • Objective-C (3)
      • Do it! 반응형 웹디자인 (4)
      • openGL (8)
      • Java (24)
      • Jni (3)
      • Android (9)
      • Wordpress (2)
      • 버그 만난 후 느낀점 (2)
      • Git (3)
      • node js (2)
      • window tablet (1)
      • HTML (3)
      • javascript (3)
      • perl (1)
      • AngularJS (0)
      • JSON (0)
      • Docker (3)
      • python (5)
      • jQuery (1)
      • MFC (4)
      • cocos studio (6)
      • Golang (1)
      • SQLite3 (0)
      • Spring Boot (8)
      • thymeleaf (0)
      • Django (0)
      • iOS (3)
      • skia (0)
      • VBA (0)
      • PHP (2)
      • Oracle (1)
      • JSP (0)
      • R (0)
    • TCP IP (2)
    • 금융 (0)
      • 금융 Study (0)
      • 금융 Archive (0)
      • 금융 Article (0)
    • 개인 프로젝트 (7)
      • gif 홈페이지 만들기 (0)
      • study app만들기 (0)
      • 크롤러 만들기 (1)
      • 카툰 홈페이지 만들기 (1)
      • 외주 홈페이지 만들기 (3)
      • 웹 홈페이지 만들기 (0)
      • 미디어 서버 만들기 (0)
      • 소개팅 어플 만들기 (0)
      • 인스타그램 풀스택 클론 코딩(인강 노트) (0)
      • 주식 모의거래 만들기 (1)
    • html php mysql (0)
    • node.Js (2)
    • 일상 (2)
    • 빈공간 uml 공부 (0)
    • Ubuntu(linux) (12)
    • 맥OS (10)
      • android 설치하기 (2)
    • Programming quizzes (0)
    • IoT (구 유비쿼터스) (16)
      • 라즈베리 파이 (11)
      • 아두이노 (5)
    • 하드웨어 (5)
      • 아수스 비보탭 노트8 asus vivotap no.. (2)
      • 크레마 카르타 (3)
    • 분석할 문장, 구문, 코드 (0)
    • 키보드 (1)
      • 해피해킹 (1)
    • 코드 라이언 (0)
    • 전자기기 (4)
    • Ted (0)
    • NAS (0)
    • 알고리즘 (0)
    • 연합인포맥스 (0)
    • 이벤트 응모함 (4)

블로그 메뉴

  • 홈
  • 태그
  • 미디어로그
  • 위치로그
  • 방명록

공지사항

인기 글

태그

  • 우분투
  • 개발
  • Example
  • Java
  • 방법
  • C
  • 설명
  • 예제
  • 코드
  • error
  • ubuntu
  • GIT
  • install
  • 라즈베리 파이
  • Python
  • 소스
  • 설치
  • 에러
  • C++
  • CODE

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
개발자_이훈규

천천히, 빠르게. 개발자의 Repository

Singleton pattern에서 이상한 부분 발견!
소프트웨어/c++

Singleton pattern에서 이상한 부분 발견!

2015. 2. 9. 22:06




1. error를 발견했는데.


error가 static으로 선언된 변수를 못찾아서 나오는 문제였습니다.


도통 이유를 알 수 없어서 이리 저리 헤매다가 어느 사이트를 찾았습니다.


http://developer.nokia.com/community/discussion/showthread.php/213834-Singleton-implementation-undefined-reference

근데 이류를 모르겠네요...
private로 선언한 변수를 어떻게 저런 방식으로 사용하지?
어마무시하게 헷갈리네요;;
내일 이유를 어쭤보고 알아봐야겠습니다.



2. error code


undefined reference to `xxx::s_xxxx'



3. 다시 재현해서 기록해보기록 했습니다.



코드는 아래와 같습니다.


Singleton.cpp


Singleton.h


main.cpp






이걸 실행시키면 아래의 에러코드가 쭈루룩 뜹니다.


xxx@xxx:~/Dropbox/cpp/xxx$ g++ main.cpp Singleton.cpp

/tmp/ccJ7akl7.o: In function `Singleton::instance()':

Singleton.cpp:(.text+0xe): undefined reference to `Singleton::s_instance'

Singleton.cpp:(.text+0x2e): undefined reference to `Singleton::s_instance'

Singleton.cpp:(.text+0x33): undefined reference to `Singleton::s_instance'



3-solution. 이 문제의 해법은,


cpp파일에 한줄만 추가하면 됩니다.


Singleton * Singleton::s_instance;


이유는 아직 잘 모르겠지만 이 한줄만 추가해주면 이 문제는 해결됩니다.



출처는 아래와 같습니다.

http://developer.nokia.com/community/discussion/showthread.php/213834-Singleton-implementation-undefined-reference



cf) 수정사항

Singleton * Singleton::s_instance;   을


#include <stdio.h>

Singleton * Singleton::s_instance =  NULL;   으로


저작자표시 비영리 (새창열림)

'소프트웨어 > c++' 카테고리의 다른 글

#define 속에 do while (0) 문장의 의미  (0) 2015.02.12
상속이면, 자식 클래스를 생성하면 부모도 생성이 되는가??  (0) 2015.02.10
Weird case. two header file and one source with static element.  (0) 2015.02.02
클래스에 클래스를 저장하는 방법 3가지.  (0) 2015.02.02
상속에 대해서  (0) 2015.01.14
    '소프트웨어/c++' 카테고리의 다른 글
    • #define 속에 do while (0) 문장의 의미
    • 상속이면, 자식 클래스를 생성하면 부모도 생성이 되는가??
    • Weird case. two header file and one source with static element.
    • 클래스에 클래스를 저장하는 방법 3가지.
    개발자_이훈규
    개발자_이훈규
    혼자 꽁양꽁양 개발하면서 놀아요~ - 노트같은 블로그

    티스토리툴바