commit 2025-10-07 19:40 add CopyThis() in ZCppMain/ZtCLinkList.H
This commit is contained in:
@ -6444,6 +6444,33 @@ namespace ZNsMain
|
||||
/*#####################################################################*/
|
||||
|
||||
|
||||
TypeThis& CopyThis(TypeThis& ARR_Rhs)
|
||||
{
|
||||
// *this 를 복사해서, ARR_Rhs 의 끝에 연결한다.
|
||||
|
||||
if(size()<1) return ARR_Rhs;
|
||||
|
||||
ZCLink* VP_HeadCopy=0;
|
||||
ZCLink* VP_TailCopy=0;
|
||||
|
||||
SendFreeOutCopy ////////////////////////
|
||||
(
|
||||
mp_HeadLink , size()-1,
|
||||
RR(VP_HeadCopy), RR(VP_TailCopy)
|
||||
);
|
||||
////////////////////////////////////////
|
||||
|
||||
TypeThis VO_TempList;
|
||||
|
||||
VO_TempList.mp_HeadLink=VP_HeadCopy;
|
||||
VO_TempList.mp_TailLink=VP_TailCopy;
|
||||
VO_TempList.ml_LinkSize=size() ;
|
||||
|
||||
ARR_Rhs.JoinTail(VO_TempList); return *this;
|
||||
}/*
|
||||
TypeThis& CopyThis(TypeThis& ARR_Rhs)*/
|
||||
|
||||
|
||||
|
||||
TypeData& GetHeadData(){return mp_HeadLink->mo_DataObjt;}
|
||||
TypeData& GetTailData(){return mp_TailLink->mo_DataObjt;}
|
||||
|
@ -1856,6 +1856,33 @@ namespace ZNsMain
|
||||
/*#####################################################################*/
|
||||
|
||||
|
||||
TypeThis& CopyThis(TypeThis& ARR_Rhs)
|
||||
{
|
||||
// *this 를 복사해서, ARR_Rhs 의 끝에 연결한다.
|
||||
|
||||
if(size()<1) return ARR_Rhs;
|
||||
|
||||
ZCLink* VP_HeadCopy=0;
|
||||
ZCLink* VP_TailCopy=0;
|
||||
|
||||
SendFreeOutCopy ////////////////////////
|
||||
(
|
||||
mp_HeadLink , size()-1,
|
||||
RR(VP_HeadCopy), RR(VP_TailCopy)
|
||||
);
|
||||
////////////////////////////////////////
|
||||
|
||||
TypeThis VO_TempList;
|
||||
|
||||
VO_TempList.mp_HeadLink=VP_HeadCopy;
|
||||
VO_TempList.mp_TailLink=VP_TailCopy;
|
||||
VO_TempList.ml_LinkSize=size() ;
|
||||
|
||||
ARR_Rhs.JoinTail(VO_TempList); return *this;
|
||||
}/*
|
||||
TypeThis& CopyThis(TypeThis& ARR_Rhs)*/
|
||||
|
||||
|
||||
template<typename TFunctor> void IterElement(TFunctor AO_Functor)
|
||||
{
|
||||
ZCLink* VP_LoopLink=mp_HeadLink;
|
||||
@ -2740,6 +2767,37 @@ namespace ZNsMain
|
||||
/*#####################################################################*/
|
||||
|
||||
|
||||
TypeThis& CopyThis(TypeThis& ARR_Rhs)
|
||||
{
|
||||
// *this 를 복사해서, ARR_Rhs 의 끝에 연결한다.
|
||||
|
||||
if(size()<1) return ARR_Rhs;
|
||||
|
||||
ZCLink* VP_HeadCopy=0;
|
||||
ZCLink* VP_TailCopy=0;
|
||||
|
||||
SendFreeOutCopy ////////////////////////////////
|
||||
(
|
||||
mo_HeadFake.mp_NextLink, size()-1,
|
||||
RR(VP_HeadCopy) , RR(VP_TailCopy)
|
||||
);
|
||||
////////////////////////////////////////////////
|
||||
|
||||
TypeThis VO_TempList;
|
||||
|
||||
ZCLink::JoinLink
|
||||
( &VO_TempList.mo_HeadFake, VP_HeadCopy );
|
||||
ZCLink::JoinLink
|
||||
( VP_TailCopy, &VO_TempList.mo_TailFake );
|
||||
|
||||
VO_TempList.ml_LinkSize = size() ;
|
||||
|
||||
ARR_Rhs.JoinTail(VO_TempList); return *this;
|
||||
}/*
|
||||
TypeThis& CopyThis(TypeThis& ARR_Rhs)*/
|
||||
|
||||
|
||||
|
||||
template<typename TFunctor> void IterElement(TFunctor AO_Functor)
|
||||
{
|
||||
ZCLink* VP_LoopLink=mo_HeadFake.mp_NextLink;
|
||||
|
@ -1422,7 +1422,7 @@ namespace ZNsMain
|
||||
(
|
||||
const ZCLink* AP_CopyLink ,
|
||||
TypeSize AL_FarNum ,
|
||||
ZtCObjList& ARR_StoreList
|
||||
TypeThis& ARR_Rhs
|
||||
) const
|
||||
/*#############################################################################*/
|
||||
{
|
||||
@ -1458,25 +1458,28 @@ namespace ZNsMain
|
||||
|
||||
ZCLink::MakeRing(VP_HeadLink, VP_TailLink);
|
||||
|
||||
ARR_StoreList.mp_HeadLink = VP_HeadLink;
|
||||
ARR_StoreList.ml_LinkSize = (AL_FarNum<0 ? -AL_FarNum : AL_FarNum)+1 ;
|
||||
TypeThis VO_TempList;
|
||||
|
||||
return ARR_StoreList;
|
||||
VO_TempList.mp_HeadLink = VP_HeadLink ;
|
||||
VO_TempList.ml_LinkSize =
|
||||
(AL_FarNum<0 ? -AL_FarNum : AL_FarNum)+1 ;
|
||||
|
||||
return ARR_Rhs.JoinTail(VO_TempList);
|
||||
}/*
|
||||
ZtCObjList& CopyLink ###########################################################
|
||||
(
|
||||
const ZCLink* AP_CopyLink ,
|
||||
TypeSize AL_FarNum ,
|
||||
ZtCObjList& ARR_StoreList
|
||||
TypeThis& ARR_Rhs
|
||||
) const
|
||||
###############################################################################*/
|
||||
|
||||
|
||||
ZtCObjList& CopyThis(ZtCObjList& ARR_StoreList) const
|
||||
ZtCObjList& CopyThis(ZtCObjList& ARR_Rhs) const
|
||||
{
|
||||
return CopyLink(mp_HeadLink, ml_LinkSize-1, RR(ARR_StoreList));
|
||||
return CopyLink(mp_HeadLink, ml_LinkSize-1, RR(ARR_Rhs));
|
||||
}/*
|
||||
ZtCObjList& CopyThis(ZtCObjList& ARR_StoreList) const*/
|
||||
ZtCObjList& CopyThis(ZtCObjList& ARR_Rhs) const*/
|
||||
|
||||
|
||||
ZtCObjList& MakeDefault
|
||||
|
Reference in New Issue
Block a user