diff --git a/ZCppMain/ZtCArray.H b/ZCppMain/ZtCArray.H index 30ce318..04df9b7 100644 --- a/ZCppMain/ZtCArray.H +++ b/ZCppMain/ZtCArray.H @@ -455,6 +455,10 @@ namespace ZNsMain 형태를 사용하면 좋을 것 같다. -- 2014-06-16 23:11:00 + + 지금은 AO_TypeHelp 도 ZtCTypeData<> 을 이용해, 최대한 참조로 받을 수 있게 + 하고 있다. -- 2021-03-08 20:31 + /////////////////////////////////////////////////////////////////////////////*/ @@ -500,6 +504,10 @@ namespace ZNsMain 형태를 사용하면 좋을 것 같다. -- 2014-06-16 23:11:00 + + 지금은 AO_TypeHelp 도 ZtCTypeData<> 을 이용해, 최대한 참조로 받을 수 있게 + 하고 있다. -- 2021-03-08 20:31 + /////////////////////////////////////////////////////////////////////////////*/ typedef ZNsMain::ZtCTypeData ZCTypeHelp1; diff --git a/ZCppMain/ZtCObjList.H b/ZCppMain/ZtCObjList.H index 0c21f47..5d44167 100644 --- a/ZCppMain/ZtCObjList.H +++ b/ZCppMain/ZtCObjList.H @@ -1524,6 +1524,10 @@ namespace ZNsMain 형태를 사용하면 좋을 것 같다. -- 2014-06-16 23:11:00 + + 지금은 AO_TypeHelp 도 ZtCTypeData<> 을 이용해, 최대한 참조로 받을 수 있게 + 하고 있다. -- 2021-03-08 20:31 + /////////////////////////////////////////////////////////////////////////////*/ typedef ZNsMain:: @@ -1538,6 +1542,7 @@ namespace ZNsMain ( VP_LoopLink->mo_Type, ZCTypeHelp::GetObjRef(AO_TypeHelp) ); + //////////////////////////////////////////// /* 위 코드로 인해서, AO_Functor 이 함수일 때 뿐이 아니라, operator() 연산자를 가진 object 포인터일 때도 사용할 수 있게 되었다. */ diff --git a/ZCppMain/test.cpp b/ZCppMain/test.cpp index b575598..64537b3 100644 --- a/ZCppMain/test.cpp +++ b/ZCppMain/test.cpp @@ -84,15 +84,24 @@ int main(int ArgiCnt, char** AppArgu) (ZTypInt AiInt, ZCTuple* AR_CTuple)*/ _FFC_(ZCShowData3) + _FFS_(ZCShowData4) + (ZTypInt AiInt, ZCTuple& AR_CTuple) + { + cout<<"# Elem4 : "<< AiInt << ", nth=" << AR_CTuple._1++ << endl; + }/* + (ZTypInt AiInt, ZCTuple* AR_CTuple)*/ + _FFC_(ZCShowData4) + ZNsHide::ZCFunctor1 VO_CFunctor1; /* ZCFunctor1 선언이 main() 바깥에 있어야 하는 문제를 해결할 수 없을까. */ VO_IntList.IterElement(ZCShowData1::Exec); - VO_IntList.IterElemRef(ZCShowData2::Exec, VO_CTuple ); VO_CTuple._1=1 ; + VO_IntList.IterElemRef(ZCShowData2::Exec, VO_CTuple ); VO_CTuple._1=1 ; VO_IntList.IterElement(ZCShowData3::Exec, &VO_CTuple); VO_IntList.IterElement(&VO_CFunctor1 ); - VO_IntArr .IterElement(&VO_CFunctor1 ); + VO_IntArr .IterElement(&VO_CFunctor1 ); VO_CTuple._1=1 ; + VO_IntArr .IterElement(ZCShowData4::Exec, &VO_CTuple); return 0; }/*