commit 2025-10-03 18:44 rename IterEleCutIf() to IterElemCut() : ZCppMain/ZtCSimList.H

This commit is contained in:
2025-10-03 18:45:07 +09:00
parent 11f79dec3a
commit 2c713b6ccb
2 changed files with 17 additions and 11 deletions

View File

@ -2164,24 +2164,24 @@ namespace ZNsMain
*/
template<typename TFunctor> void IterEleCutIf(TFunctor AO_Functor)
template<typename TFunctor> void IterElemCut(TFunctor AO_Functor)
{
// 각 링크에 대하여 AO_Functor(ZCLink*) 함수를 실행한다.
// 이 함수를 설계한 이유는 각 링크를 순회하면서 삭제할 수 있도록 하기 위해서다.
ZCLink* VP_TempLink =mp_HeadLink ;
ZCLink* VP_TempPrev =0 ;
ZCLink* VP_TempBefore=VP_TempLink ;
ZCLink* VP_TempPrev = 0 ;
ZCLink* VP_TempLink = mp_HeadLink ;
ZCLink* VP_TempBefore = VP_TempLink ;
// 순회 도중에 링크가 삭제되면 노드갯수가 변할 수 있으므로
// ml_LinkSize 를 다른 변수에 담아 놓는다.
// 순회 도중에 링크가 삭제되면, 링크 갯수가 변할 수
// 있으므로, ml_LinkSize 를 다른 변수에 담아 놓는다.
TTypSize VL_Count=ml_LinkSize ;
TTypSize VL_Index=1 ;
TTypSize VL_Count = ml_LinkSize ;
TTypSize VL_Index = 1 ;
__for1(TTypSize, VL_Loop, VL_Count)
{
VP_TempLink=VP_TempLink->mp_NextLink;
VP_TempLink = VP_TempLink->mp_NextLink;
const bool CB_IsTrue = ZtCTypeData<TFunctor>::
GetObjRef(AO_Functor)( VP_TempBefore->mo_Data );
@ -2200,11 +2200,11 @@ namespace ZNsMain
}/*
else*/
VP_TempBefore=VP_TempLink;
VP_TempBefore = VP_TempLink;
}/*
__for1(TTypSize, VL_Loop, VL_Count)*/
}/*
template<typename TFunctor> void IterEleCutIf(TFunctor AO_Functor) */
template<typename TFunctor> void IterElemCut(TFunctor AO_Functor) */
template<typename TFunctor> void IterEleLink ////////////////////////

View File

@ -372,6 +372,12 @@ namespace ZNsMain
VO_ZCBaseListEx10_2.DeleteTail(2);
VO_ZCBaseListEx10_2.IterElemRev(&ShowDataInNode);
cout<<endl<<"# VO_ZCBaseListEx10_2 : DeleteHead(1)"<<endl<<endl;
VO_ZCBaseListEx10_2.DeleteHead(1);
VO_ZCBaseListEx10_2.IterElement(&ShowDataInNode);
return 0;
}/*
static int Main(int AI_ArgCnt=0, char* APP_ArgVal[]=0)*/