From d04d601a7ca61622929f727d3d2d7f2396177b0f Mon Sep 17 00:00:00 2001 From: sauron Date: Sat, 4 Oct 2025 00:31:38 +0900 Subject: [PATCH] commit 2025-10-04 00:30 edit a bit ZtCObjUnitList : ZCppMain/ZtCObjList.H --- ZCppMain/ZtCObjList.H | 53 +++++++++++++++++++++++++++++++++++---------------- 1 file changed, 37 insertions(+), 16 deletions(-) diff --git a/ZCppMain/ZtCObjList.H b/ZCppMain/ZtCObjList.H index e8c87c7..527b939 100644 --- a/ZCppMain/ZtCObjList.H +++ b/ZCppMain/ZtCObjList.H @@ -3280,6 +3280,9 @@ namespace ZNsMain const TypeData& operator[](TypeSize AI_Index) const { return mo_TypeArr[AI_Index ]; } + TypeArr& operator*() { return mo_TypeArr; } + const TypeArr& operator*() const{ return mo_TypeArr; } + bool AddObj(TypeArg AR_Object) { @@ -3652,7 +3655,9 @@ namespace ZNsMain while(--VI_AddUnitCnt>=0) { - AllocUnitAtTail()->AddObjArr(AP_ObjArr, ZEArrSize); AP_ObjArr += ZEArrSize; + AllocUnitAtTail()->AddObjArr + ( AP_ObjArr, ZEArrSize ) ; + AP_ObjArr += ZEArrSize ; }/* while(--VI_AddUnitCnt>=0)*/ @@ -3847,11 +3852,10 @@ namespace ZNsMain mp_CutHeadUnit=mp_NowHeadUnit; //else - mp_NowHeadUnit=0 ; - - ml_CutUnitCnt+=ml_NowUnitCnt ; - ml_NowUnitCnt =0 ; - ml_NowObjtCnt =0 ; + mp_NowHeadUnit =0 ; + ml_CutUnitCnt +=ml_NowUnitCnt ; + ml_NowUnitCnt =0 ; + ml_NowObjtCnt =0 ; }/* void DeleteAll()*/ @@ -3885,6 +3889,7 @@ namespace ZNsMain }/* void DeleteHead()*/ + void DeleteAllCutList() { // '내부 삭제 리스트'를 지운다. @@ -3903,6 +3908,7 @@ namespace ZNsMain }/* void DeleteAllCutList()*/ + void Clear (){DeleteAll();} void clear (){DeleteAll();} @@ -3960,6 +3966,7 @@ namespace ZNsMain }/* void JoinAtHead(ZtCObjUnitList& rhs)*/ + void JoinRhsTailAtTail(ZtCObjUnitList& rhs, TypeSize AI_FetchSize) { // rhs 의 '내부 사용 리스트'의 마지막 AI_FetchSize 개의 링크를 자신의 '내부 사용 리스트'로 가져온다. @@ -4042,6 +4049,7 @@ namespace ZNsMain }/* void JoinRhsHeadAtTail(ZtCObjUnitList& rhs, TypeSize AI_FetchSize)*/ + void JoinRhsTailOneAtTail(ZtCObjUnitList& rhs) { // rhs 의 '내부 사용 리스트'의 마지막 1 개의 링크를 자신의 '내부 사용 리스트'로 가져온다. @@ -4135,6 +4143,7 @@ namespace ZNsMain }/* void JoinCutListAtTail(ZtCObjUnitList& rhs)*/ + void JoinRhsCutListTailAtTail(ZtCObjUnitList& rhs, TypeSize AI_FetchSize) { // rhs 의 '내부 삭제 리스트'의 마지막 AI_FetchSize 개의 링크를 자신의 '내부 삭제 리스트'로 가져온다. @@ -4175,7 +4184,7 @@ namespace ZNsMain void JoinRhsCutListHeadAtTail(ZtCObjUnitList& rhs, TypeSize AI_FetchSize) { - // rhs 의 '내부 삭제 리스트'의 처음 AI_FetchSize 개의 링크를 자신의 '내부 삭제 리스트'로 가져온다. + // rhs 의 '내부 삭제 리스트'의 처음 AI_FetchSize 개의 링크를 자신의 '내부 삭제 리스트'로 가져온다. if(AI_FetchSize<1) return ; @@ -4212,6 +4221,7 @@ namespace ZNsMain }/* void JoinRhsCutListHeadAtTail(ZtCObjUnitList& rhs, TypeSize AI_FetchSize)*/ + void JoinRhsCutTailOneAtTail(ZtCObjUnitList& rhs) { // rhs 의 '내부 삭제 리스트'의 마지막 1 개의 링크를 자신의 '내부 삭제 리스트'로 가져온다. @@ -4277,21 +4287,32 @@ namespace ZNsMain void JoinRhsCutHeadOneAtTail(ZtCObjUnitList& rhs)*/ - TypeData& GetDataInIter(TypeData* AP_Object ){return *AP_Object ;} - TypeArr & GetDataInIter(ZCLinkUnit* AP_CLinkUnit){return AP_CLinkUnit->mo_TypeArr;} + TypeData& GetDataInIter(TypeData* AP_Object ) + { return *AP_Object ; } + TypeArr & GetDataInIter(ZCLinkUnit* AP_CLinkUnit) + { return AP_CLinkUnit->mo_TypeArr; } void MoveNextIter(TypeData*& APR_Object){++APR_Object;} void MovePrevIter(TypeData*& APR_Object){--APR_Object;} - void MoveNextIter(ZCLinkUnit*& APR_CLinkUnit){APR_CLinkUnit=APR_CLinkUnit->mp_NextUnit;} - void MovePrevIter(ZCLinkUnit*& APR_CLinkUnit){APR_CLinkUnit=APR_CLinkUnit->mp_PrevUnit;} + void MoveNextIter(ZCLinkUnit*& APR_CLinkUnit) + { APR_CLinkUnit=APR_CLinkUnit->mp_NextUnit; } + void MovePrevIter(ZCLinkUnit*& APR_CLinkUnit) + { APR_CLinkUnit=APR_CLinkUnit->mp_PrevUnit; } - TypeData& ItD(TypeData* AP_Object ){return *AP_Object;} + + void ItNext(TypeData*& APR_Object){++APR_Object;} + void ItPrev(TypeData*& APR_Object){--APR_Object;} + + void ItNext(ZCLinkUnit*& APR_CLinkUnit) + { APR_CLinkUnit=APR_CLinkUnit->mp_NextUnit; } + void ItPrev(ZCLinkUnit*& APR_CLinkUnit) + { APR_CLinkUnit=APR_CLinkUnit->mp_PrevUnit; } + + TypeData& ItD(TypeData* AP_Object ) + { return *AP_Object ; } TypeArr & ItD(ZCLinkUnit* AP_CLinkUnit) - { - return AP_CLinkUnit->mo_TypeArr; - }/* - TypeArr & ItD(ZCLinkUnit* AP_CLinkUnit)*/ + { return **AP_CLinkUnit; } public : };/*