commit 2025-10-14 21:11 add _FOR_ITER_EASY_START_R0/_FOR_ITER_EASY_CLOSE_R0 : ZCppMain/ZMainHead.H

This commit is contained in:
2025-10-14 21:11:14 +09:00
parent b8d5ddb47f
commit 3e37580b98

View File

@ -518,6 +518,29 @@ using namespace std;
#define _FOR_ITER_EASY_CLOSE0_C(IterType, IterObj, IterVar, SizeVar) \
IterObj.ItNext(IterVar); } \
}
#define _FOR_ITER_EASY_START_R0(IterType, IterObj, IterVar, SizeVar) \
{ \
typedef IterType::TypeSize IterTypeSize ; \
ZNsMain::IterEasyID IterVar = IterObj.ItTID(); \
\
for(IterTypeSize SizeVar=0; SizeVar<IterObj.size(); ++SizeVar){
#define _FOR_ITER_EASY_CLOSE_R0(IterType, IterObj, IterVar, SizeVar) \
IterObj.ItPrev(IterVar); } \
}
#define _FOR_ITER_EASY_START_R0_C(IterType, IterObj, IterVar, SizeVar) \
{ \
typedef IterType::TypeSize IterTypeSize ; \
ZNsMain::IterEasyIDc IterVar = IterObj.ItTID(); \
\
for(IterTypeSize SizeVar=0; SizeVar<IterObj.size(); ++SizeVar){
#define _FOR_ITER_EASY_CLOSE_R0_C(IterType, IterObj, IterVar, SizeVar) \
IterObj.ItPrev(IterVar); } \
}
/*######################################################################
■ _FOR_ITER_EASY_START0 와 _FOR_ITER_EASY_CLOSE0 예제.
@ -532,10 +555,16 @@ using namespace std;
_FOR_ITER_EASY_START0(CObjList, myList, VH_NowIter, i)
{
cout<<"* list >> "<<myList.ItD(VH_NowIter)<<endl;
cout<<"# list : "<<myList.ItD(VH_NowIter)<<endl;
}
_FOR_ITER_EASY_CLOSE0(CObjList, myList, VH_NowIter, i)
_FOR_ITER_EASY_START_R0_C(CObjList, myList, VH_NowIter, i)
{
cout<<"# list rev const: "<<myList.ItD(VH_NowIter)<<endl;
}
_FOR_ITER_EASY_CLOSE_R0_C(CObjList, myList, VH_NowIter, i)
-- 2025-10-14 16:34
######################################################################*/