|
typedef TObjManageClass<TXiPanel*> TXiPanelManageClass;
typedef TObjManageClass<TLMD2PaneSplitCtrl*> TLMD2PaneSplitCtrlManageClass;
std::vector<TXiPanelManageClass> A;
std::vector<TLMD2PaneSplitCtrlManageClass> B;
이용태 님이 쓰신 글 :
: 템플릿을 하나 맹글고... 전달된 typename을 가지는 벡터를 만들려고 합니다.
:
: 템플릿은 다음과 같구요..
: template<typename T>
: class TObjManageClass
: {
: private :
: T *m_pItem;
: int crNo;
:
: public:
: TObjManageClass()
: {
: m_pItem = NULL;
: crNo = 0;
: }
:
: ~TObjManageClass()
: {
: if(m_pItem != NULL)
: delete m_pItem;
: }
:
: void SetItem(T *pItem)
: {
: m_pItem = pItem;
: }
:
: T* GetItem()
: {
: return m_pItem;
: }
:
: void SetcrNo(int nNo)
: {
: crNo = nNo;
: }
:
: int GetcrNo()
: {
: return crNo;
: }
:
: };
:
:
: 이렇게 만들어진 템플릿을 벡터에 넣을려고 하는데요... 다음과 같이 하니까 안됩니다.
:
: std::vector<TObjManageClass<TXiPanel*>> vxiPanel1;
: std::vector<TObjManageClass<TLMD2PaneSplitCtrl*>> vSpliter1;
:
: 벡터에 전달된 typename인 템플릿을 담을려면 어떻게 해야 하나요??
|