C++에서 문자열만 가지고 Class new 방법이 있을까요?
글쓴이: ys2cdh / 작성시간: 수, 2010/03/10 - 10:51오전
안녕하세요.
아래와 같은 의문이 생겨서 질문을 드립니다.
각각의 Class들의 이름을 문자열로 가지고 있습니다.
ex) Class CMsg -> "CMsg" , Class CMsgs -> "CMsgs"
그럼 위의 문자열을 가지고 각각의 Class을 new 할 수 있는 방법이 있을까요?
문자열로 switch 문을 만들어 할 수는 있지만 더 좋은 방법이 없을 까요?
(Class가 새로 생길 때마다 문자열만 추가해서 생성 하고 싶습니다.)
많은 의견 부탁 드립니다.
Forums:
Dependency Injection..
Dependency Injection이란 기법을 쓰면 됩니다.
많은 경우에 말씀하신 문자열을 XML로 정의하여 사용합니다. (JAVA spring framework에서 사용하죠.)
C++에서 쓸려면 stub code generator(class header 파일을 읽어서 문자열로 new등을 해주는 코드를 생성)가 필요합니다.
예를 들면 이런게 있습니다. --> http://code.google.com/p/autumnframework/
저는 시스템 테스트를 작성할 때 이 기법을 사용했습니다. --> http://sozu.tistory.com/24
사실 말씀하신 "문자열로 switch 문을 만들어 할 수는 있는" 방법도 new만 하실거라면 괜찮습니다. (Factory pattern)
-----------
청하가 제안하는 소프트웨어 엔지니어로써 재미있게 사는 법
http://sozu.tistory.com
-----------
청하가 제안하는 소프트웨어 엔지니어로써 재미있게 사는 법
http://sozu.tistory.com
그냥 펙토리
그냥 펙토리 패턴으로 하면 되지 않나요?
고작 블로킹 하나, 고작 25점 중에 1점, 고작 부활동
"만약 그 순간이 온다면 그때가 네가 배구에 빠지는 순간이야"
문자열로만 가지고 생성하고 싶습니다.
펙토리를 쓰면 문자열 말고도 다른 작업을 해야 되지 않나요?(Class new 할당 부분 추가 등등....)
왕~~ ㅇ_ㅇ'''
덕분에 aop를 제대로 적용한걸 알게 됐네요 ㅋㅋ
매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.
매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.
각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com
댓글 달기