commit 2025-10-04 12:08 add IterElemLink(TFunctor, TTypeHelp1, TTypeHelp2) : ZCppMain/ZMainHead.H

This commit is contained in:
2025-10-04 12:08:13 +09:00
parent a721d4465a
commit 989273ee18
4 changed files with 125 additions and 28 deletions

View File

@ -2600,6 +2600,38 @@ namespace ZNsMain
void IterElemLink(TFunctor AO_Functor, TTypeHelp AO_TypeHelp) */
template
< typename TFunctor , typename TTypeHelp1 , typename TTypeHelp2 >
void IterElemLink
( TFunctor AO_Functor, TTypeHelp1 AO_TypeHelp1, TTypeHelp2 AO_TypeHelp2 )
/*#############################################################################*/
{
typedef ZNsMain::ZtCCheckRef<TTypeHelp1> ZCCheckRef1;
typedef ZNsMain::ZtCCheckRef<TTypeHelp2> ZCCheckRef2;
ZCLink* VP_LoopLink=mp_HeadLink;
__for0(TypeSize, i, ml_LinkSize)
{
ZtCTypeData<TFunctor>::GetObjRef(AO_Functor)
(
*VP_LoopLink
, ZCCheckRef1::PassData(AO_TypeHelp1)
, ZCCheckRef2::PassData(AO_TypeHelp2)
);
////////////////////////////////////////////
VP_LoopLink = VP_LoopLink->mp_NextLink ;
}/*
__for0(TypeSize, i, ml_LinkSize)*/
}/*
template
< typename TFunctor , typename TTypeHelp1 , typename TTypeHelp2 >
void IterElemLink
( TFunctor AO_Functor, TTypeHelp1 AO_TypeHelp1, TTypeHelp2 AO_TypeHelp2 )
###############################################################################*/
template<typename TFunctor> void IterElemLink ///////////////////////
(
ZCLink& AR_StdLink ,
@ -2609,9 +2641,9 @@ namespace ZNsMain
/*#################################################################*/
{
/* AP_StdLink 부터 AL_WorkDistance 만큼 이동하면서
* 각 ZCLink 에 대하여 AO_Functor() 함수를 수행한다.(총 수행 횟수는 (AL_WorkDistance)절대값+1)
* 각 ZCLink 에 대하여 AO_Functor() 함수를 수행한다.
(총 수행 횟수는 (AL_WorkDistance)절대값+1)
*/
ZCLink* VP_StdLink = &AR_StdLink;
if(AL_WorkDistance>=0)