diff --git a/ZCppMain/ZtCObjList.H b/ZCppMain/ZtCObjList.H index 08d1948..c1a0654 100644 --- a/ZCppMain/ZtCObjList.H +++ b/ZCppMain/ZtCObjList.H @@ -3193,6 +3193,8 @@ namespace ZNsMain class ZtCObjUnitList /////////////////////////////////////////////////// { public : + class ZCLinkUnit; typedef ZCLinkUnit TypeUnit; + public : typedef TTypeObjUnitList TypeObjUnitList; public : enum{ZEArrSize =TypeObjUnitList::ZEArrSize }; @@ -3203,8 +3205,11 @@ namespace ZNsMain typedef typename TypeObjUnitList::TypeSize TypeSize ; typedef typename TypeObjUnitList::TypeAlloc TypeAlloc; public : - typedef TypeData TypeArr[ZEArrSize]; - typedef TypeData ZCLink ; // 이 typedef 에 주의. + typedef TypeData TypeArr[ZEArrSize] ; + public : + typedef const TypeUnit TypeUnitC ; + typedef const TypeData TypeDataC ; + typedef const TypeArr TypeArrC ; public : @@ -3213,10 +3218,10 @@ namespace ZNsMain public : friend class ZtCObjUnitList; private: - TypeArr mo_TypeArr ; - TypeSize ml_UseSize ; - ZCLinkUnit* mp_NextUnit; - ZCLinkUnit* mp_PrevUnit; + TypeArr mo_TypeArr ; + TypeSize ml_UseSize ; + TypeUnit* mp_NextUnit; + TypeUnit* mp_PrevUnit; private: static void JoinLink(ZCLinkUnit* lhs, ZCLinkUnit* rhs) @@ -3239,7 +3244,8 @@ namespace ZNsMain }/* TypeData& AddEmptyObj()*/ - /*private:*/ + private: + /********************************************************************/ public : ZCLinkUnit() @@ -3276,28 +3282,29 @@ namespace ZNsMain }/* ZCLinkUnit& operator=(const ZCLinkUnit& rhs)*/ - TypeData* GetHeadObjPtr (){return mo_TypeArr ;} - ZCLinkUnit* GetNextUnitPtr(){return mp_NextUnit;} - ZCLinkUnit* GetPrevUniPtr (){return mp_PrevUnit;} + TypeSize size () const{return ml_UseSize ;} + TypeSize GetUseSize () const{return ml_UseSize ;} - TypeSize size () const{return ml_UseSize ;} - TypeSize GetUseSize () const{return ml_UseSize ;} - const TypeData* GetHeadObjPtr () const{return mo_TypeArr ;} - const ZCLinkUnit* GetNextUnitPtr() const{return mp_NextUnit;} - const ZCLinkUnit* GetPrevUniPtr () const{return mp_PrevUnit;} + TypeData * GetHeadObjPtr () {return mo_TypeArr ;} + TypeUnit * GetNextUnitPtr() {return mp_NextUnit;} + TypeUnit * GetPrevUniPtr () {return mp_PrevUnit;} - TypeData& GetData (TypeSize AI_Index) + TypeDataC* GetHeadObjPtr () const{return mo_TypeArr ;} + TypeUnitC* GetNextUnitPtr() const{return mp_NextUnit;} + TypeUnitC* GetPrevUniPtr () const{return mp_PrevUnit;} + + TypeData & GetData (TypeSize AI_Index) { return mo_TypeArr[AI_Index-1]; } // AI_Index start from 1 - TypeData& operator[](TypeSize AI_Index) - { return mo_TypeArr[AI_Index ]; } - - const TypeData& GetData (TypeSize AI_Index) const // AI_Index start from 1 + TypeDataC& GetData (TypeSize AI_Index) const { return mo_TypeArr[AI_Index-1]; } - const TypeData& operator[](TypeSize AI_Index) const + + TypeData & operator[](TypeSize AI_Index) + { return mo_TypeArr[AI_Index ]; } + TypeDataC& operator[](TypeSize AI_Index) const { return mo_TypeArr[AI_Index ]; } - TypeArr& operator*() { return mo_TypeArr; } - const TypeArr& operator*() const{ return mo_TypeArr; } + TypeArr & operator*() { return mo_TypeArr; } + TypeArrC & operator*() const{ return mo_TypeArr; } bool AddObj(TypeArg AR_Object)