commit 2025-10-03 11:51 add ChangeCapacity() in ZtCBaseList : ZCppMain/ZMainHead.H
This commit is contained in:
@ -4035,68 +4035,75 @@ namespace ZNsMain
|
|||||||
typedef typename TLinkList::TypeSize TypeSize;
|
typedef typename TLinkList::TypeSize TypeSize;
|
||||||
public:
|
public:
|
||||||
|
|
||||||
void RecvFreeIn(ZCLink* AP_CutLink){}
|
_NP_ void RecvFreeIn(ZCLink* AP_CutLink){}
|
||||||
void RecvFreeIn /////////////////////
|
_NP_ void RecvFreeIn /////////////////////
|
||||||
(
|
(
|
||||||
TypeSize AL_CutCnt ,
|
TypeSize AL_CutCnt ,
|
||||||
ZCLink* AP_CutHead,
|
ZCLink* AP_CutHead,
|
||||||
ZCLink* AP_CutTail
|
ZCLink* AP_CutTail
|
||||||
)
|
)
|
||||||
{ } /////////////////////////////////
|
{ } //////////////////////////////////////
|
||||||
|
|
||||||
|
|
||||||
ZCLink* SendFreeOut(){}
|
_NP_ ZCLink* SendFreeOut(){}
|
||||||
void SendFreeOut /////////////////
|
_NP_ void SendFreeOut /////////////////
|
||||||
(
|
(
|
||||||
TypeSize AL_NeedCnt ,
|
TypeSize AL_NeedCnt ,
|
||||||
ZCLink*& APR_NewHead,
|
ZCLink*& APR_NewHead,
|
||||||
ZCLink*& APR_NewTail
|
ZCLink*& APR_NewTail
|
||||||
)
|
)
|
||||||
{ } /////////////////////////////////
|
{ } //////////////////////////////////////
|
||||||
|
|
||||||
|
|
||||||
void SendFreeOutCopy /*////////////////////////////*/
|
_NP_ void SendFreeOutCopy /*////////////////////////////*/
|
||||||
(
|
(
|
||||||
ZCLink* AP_LinkOrgin, TypeSize AL_FarNum ,
|
ZCLink* AP_LinkOrgin, TypeSize AL_FarNum ,
|
||||||
ZCLink*& APR_HeadCopy, ZCLink*& APR_TailCopy
|
ZCLink*& APR_HeadCopy, ZCLink*& APR_TailCopy
|
||||||
)
|
)
|
||||||
{ } /*/////////////////////////////////////////////*/
|
{ } /*//////////////////////////////////////////////////*/
|
||||||
|
|
||||||
|
|
||||||
void DeleteHeap(){}
|
_NP_ void DeleteHeap(){}
|
||||||
|
|
||||||
|
|
||||||
void MakeEuqal(ZtCBody& rhs)
|
_NP_ void MakeEuqal(ZtCBody& rhs)
|
||||||
{
|
{
|
||||||
}/*
|
}/*
|
||||||
void MakeEuqal(ZtCBody& rhs)*/
|
_NP_ void MakeEuqal(ZtCBody& rhs)*/
|
||||||
|
|
||||||
|
|
||||||
TypeSize GetUseHeapSize() const
|
_NP_ TypeSize GetUseHeapSize() const
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}/*
|
}/*
|
||||||
TypeSize GetUseHeapSize() const*/
|
_NP_ TypeSize GetUseHeapSize() const*/
|
||||||
|
|
||||||
TypeSize GetAllHeapSize() const
|
_NP_ TypeSize GetAllHeapSize() const
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}/*
|
}/*
|
||||||
TypeSize GetAllHeapSize() const*/
|
_NP_ TypeSize GetAllHeapSize() const*/
|
||||||
|
|
||||||
|
|
||||||
TypeSize size() const
|
_NP_ TypeSize size() const
|
||||||
{
|
{
|
||||||
return GetUseHeapSize();
|
return GetUseHeapSize();
|
||||||
}/*
|
}/*
|
||||||
TypeSize GetHeapSize() const*/
|
_NP_ TypeSize size() const*/
|
||||||
|
|
||||||
TypeSize capacity() const
|
_NP_ TypeSize capacity() const
|
||||||
{
|
{
|
||||||
return GetAllHeapSize();
|
return GetAllHeapSize();
|
||||||
}/*
|
}/*
|
||||||
TypeSize GetHeapSize() const*/
|
_NP_ TypeSize capacity() const*/
|
||||||
|
|
||||||
|
|
||||||
|
_NP_ void ChangeCapacity(TypeSize AI_AddCut)
|
||||||
|
{
|
||||||
|
}/*
|
||||||
|
_NP_ void ChangeCapacity(TypeSize AI_AddCut)*/
|
||||||
|
|
||||||
|
public:
|
||||||
};/*
|
};/*
|
||||||
template<typename TLinkList> class ZtCBody*/
|
template<typename TLinkList> class ZtCBody*/
|
||||||
|
|
||||||
@ -4155,14 +4162,14 @@ namespace ZNsMain
|
|||||||
:::::::::::::::::::::::::::::::::::::::::::::::::::*/
|
:::::::::::::::::::::::::::::::::::::::::::::::::::*/
|
||||||
public:
|
public:
|
||||||
|
|
||||||
void RecvFreeIn(ZCLink* AP_CutLink){delete AP_CutLink;}
|
_NP_ void RecvFreeIn(ZCLink* AP_CutLink){delete AP_CutLink;}
|
||||||
void RecvFreeIn ///////////////////////////////////////
|
_NP_ void RecvFreeIn ///////////////////////////////////////
|
||||||
(
|
(
|
||||||
TypeSize AL_CutCnt ,
|
TypeSize AL_CutCnt ,
|
||||||
ZCLink* AP_CutHead,
|
ZCLink* AP_CutHead,
|
||||||
ZCLink* AP_CutTail
|
ZCLink* AP_CutTail
|
||||||
)
|
)
|
||||||
///////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////
|
||||||
{
|
{
|
||||||
ZCLink* VP_DelLink = AP_CutHead;
|
ZCLink* VP_DelLink = AP_CutHead;
|
||||||
|
|
||||||
@ -4174,17 +4181,17 @@ namespace ZNsMain
|
|||||||
}/*
|
}/*
|
||||||
__for0(TypeSize, i, AL_CutCnt)*/
|
__for0(TypeSize, i, AL_CutCnt)*/
|
||||||
}
|
}
|
||||||
///////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
|
||||||
ZCLink* SendFreeOut(){return new ZCLink;}
|
_NP_ ZCLink* SendFreeOut(){return new ZCLink;}
|
||||||
void SendFreeOut ///////////////////////////////////
|
_NP_ void SendFreeOut ///////////////////////////////////
|
||||||
(
|
(
|
||||||
TypeSize AL_NeedCnt ,
|
TypeSize AL_NeedCnt ,
|
||||||
ZCLink*& APR_HeadLink ,
|
ZCLink*& APR_HeadLink ,
|
||||||
ZCLink*& APR_TailLink
|
ZCLink*& APR_TailLink
|
||||||
)
|
)
|
||||||
///////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////
|
||||||
{
|
{
|
||||||
APR_HeadLink = new ZCLink;
|
APR_HeadLink = new ZCLink;
|
||||||
|
|
||||||
@ -4205,15 +4212,15 @@ namespace ZNsMain
|
|||||||
|
|
||||||
APR_TailLink = VP_TailLink;
|
APR_TailLink = VP_TailLink;
|
||||||
}
|
}
|
||||||
///////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
|
||||||
void SendFreeOutCopy /*////////////////////////////*/
|
_NP_ void SendFreeOutCopy /*////////////////////////////*/
|
||||||
(
|
(
|
||||||
ZCLink* AP_LinkOrgin, TypeSize AL_FarNum ,
|
ZCLink* AP_LinkOrgin, TypeSize AL_FarNum ,
|
||||||
ZCLink*& APR_HeadCopy, ZCLink*& APR_TailCopy
|
ZCLink*& APR_HeadCopy, ZCLink*& APR_TailCopy
|
||||||
)
|
)
|
||||||
/////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////
|
||||||
{
|
{
|
||||||
// 총 AL_FarNum+1 개의 링크가 만들어짊.
|
// 총 AL_FarNum+1 개의 링크가 만들어짊.
|
||||||
|
|
||||||
@ -4239,47 +4246,53 @@ namespace ZNsMain
|
|||||||
|
|
||||||
APR_TailCopy=VP_TailLink;
|
APR_TailCopy=VP_TailLink;
|
||||||
}/*
|
}/*
|
||||||
void SendFreeOutCopy //////////////////////////////
|
_NP_ void SendFreeOutCopy //////////////////////////////
|
||||||
(
|
(
|
||||||
ZCLink* AP_LinkOrgin, TypeSize AL_FarNum ,
|
ZCLink* AP_LinkOrgin, TypeSize AL_FarNum ,
|
||||||
ZCLink*& APR_HeadCopy, ZCLink*& APR_TailCopy
|
ZCLink*& APR_HeadCopy, ZCLink*& APR_TailCopy
|
||||||
)
|
)
|
||||||
///////////////////////////////////////////////////*/
|
////////////////////////////////////////////////////////*/
|
||||||
|
|
||||||
|
|
||||||
void DeleteHeap(){}
|
_NP_ void DeleteHeap(){}
|
||||||
|
|
||||||
|
|
||||||
void MakeEuqal(ZtCBody& rhs)
|
_NP_ void MakeEuqal(ZtCBody& rhs)
|
||||||
{
|
{
|
||||||
}/*
|
}/*
|
||||||
void MakeEuqal(ZtCBody& rhs)*/
|
_NP_ void MakeEuqal(ZtCBody& rhs)*/
|
||||||
|
|
||||||
|
|
||||||
TypeSize GetUseHeapSize() const
|
_NP_ TypeSize GetUseHeapSize() const
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}/*
|
}/*
|
||||||
TypeSize GetUseHeapSize() const*/
|
_NP_ TypeSize GetUseHeapSize() const*/
|
||||||
|
|
||||||
TypeSize GetAllHeapSize() const
|
_NP_ TypeSize GetAllHeapSize() const
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}/*
|
}/*
|
||||||
TypeSize GetAllHeapSize() const*/
|
_NP_ TypeSize GetAllHeapSize() const*/
|
||||||
|
|
||||||
|
|
||||||
TypeSize size() const
|
_NP_ TypeSize size() const
|
||||||
{
|
{
|
||||||
return GetUseHeapSize();
|
return GetUseHeapSize();
|
||||||
}/*
|
}/*
|
||||||
TypeSize GetHeapSize() const*/
|
_NP_ TypeSize GetHeapSize() const*/
|
||||||
|
|
||||||
TypeSize capacity() const
|
_NP_ TypeSize capacity() const
|
||||||
{
|
{
|
||||||
return GetAllHeapSize();
|
return GetAllHeapSize();
|
||||||
}/*
|
}/*
|
||||||
TypeSize GetHeapSize() const*/
|
_NP_ TypeSize capacity() const*/
|
||||||
|
|
||||||
|
|
||||||
|
_NP_ void ChangeCapacity(TypeSize AI_AddCut)
|
||||||
|
{
|
||||||
|
}/*
|
||||||
|
_NP_ void ChangeCapacity(TypeSize AI_AddCut)*/
|
||||||
|
|
||||||
};/*
|
};/*
|
||||||
template<typename TSnglList> class ZtCBody*/
|
template<typename TSnglList> class ZtCBody*/
|
||||||
@ -4300,14 +4313,14 @@ namespace ZNsMain
|
|||||||
typedef typename TLinkList::TypeSize TypeSize;
|
typedef typename TLinkList::TypeSize TypeSize;
|
||||||
public:
|
public:
|
||||||
|
|
||||||
void RecvFreeIn(ZCLink* AP_CutLink){delete AP_CutLink;}
|
_NP_ void RecvFreeIn(ZCLink* AP_CutLink){delete AP_CutLink;}
|
||||||
void RecvFreeIn ///////////////////////////////////////
|
_NP_ void RecvFreeIn ///////////////////////////////////////
|
||||||
(
|
(
|
||||||
TypeSize AL_CutCnt ,
|
TypeSize AL_CutCnt ,
|
||||||
ZCLink* AP_CutHead,
|
ZCLink* AP_CutHead,
|
||||||
ZCLink* AP_CutTail
|
ZCLink* AP_CutTail
|
||||||
)
|
)
|
||||||
///////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////
|
||||||
{
|
{
|
||||||
ZCLink* VP_DelLink = AP_CutHead;
|
ZCLink* VP_DelLink = AP_CutHead;
|
||||||
|
|
||||||
@ -4319,17 +4332,17 @@ namespace ZNsMain
|
|||||||
}/*
|
}/*
|
||||||
__for0(TypeSize, i, AL_CutCnt)*/
|
__for0(TypeSize, i, AL_CutCnt)*/
|
||||||
}
|
}
|
||||||
///////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
|
||||||
ZCLink* SendFreeOut(){return new ZCLink;}
|
_NP_ ZCLink* SendFreeOut(){return new ZCLink;}
|
||||||
void SendFreeOut ///////////////////////////////////
|
_NP_ void SendFreeOut ///////////////////////////////////
|
||||||
(
|
(
|
||||||
TypeSize AL_NeedCnt ,
|
TypeSize AL_NeedCnt ,
|
||||||
ZCLink*& APR_HeadLink ,
|
ZCLink*& APR_HeadLink ,
|
||||||
ZCLink*& APR_TailLink
|
ZCLink*& APR_TailLink
|
||||||
)
|
)
|
||||||
///////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////
|
||||||
{
|
{
|
||||||
APR_HeadLink = new ZCLink;
|
APR_HeadLink = new ZCLink;
|
||||||
|
|
||||||
@ -4351,15 +4364,15 @@ namespace ZNsMain
|
|||||||
|
|
||||||
APR_TailLink = VP_TailLink;
|
APR_TailLink = VP_TailLink;
|
||||||
}
|
}
|
||||||
///////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
|
||||||
void SendFreeOutCopy /*////////////////////////////*/
|
_NP_ void SendFreeOutCopy /*////////////////////////////*/
|
||||||
(
|
(
|
||||||
ZCLink* AP_LinkOrgin, TypeSize AL_FarNum ,
|
ZCLink* AP_LinkOrgin, TypeSize AL_FarNum ,
|
||||||
ZCLink*& APR_HeadCopy, ZCLink*& APR_TailCopy
|
ZCLink*& APR_HeadCopy, ZCLink*& APR_TailCopy
|
||||||
)
|
)
|
||||||
/////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////
|
||||||
{
|
{
|
||||||
// 총 AL_FarNum+1 개의 링크가 만들어짊
|
// 총 AL_FarNum+1 개의 링크가 만들어짊
|
||||||
|
|
||||||
@ -4385,47 +4398,53 @@ namespace ZNsMain
|
|||||||
|
|
||||||
APR_TailCopy=VP_TailLink;
|
APR_TailCopy=VP_TailLink;
|
||||||
}/*
|
}/*
|
||||||
void SendFreeOutCopy //////////////////////////////
|
_NP_ void SendFreeOutCopy //////////////////////////////
|
||||||
(
|
(
|
||||||
ZCLink* AP_LinkOrgin, TypeSize AL_FarNum ,
|
ZCLink* AP_LinkOrgin, TypeSize AL_FarNum ,
|
||||||
ZCLink*& APR_HeadCopy, ZCLink*& APR_TailCopy
|
ZCLink*& APR_HeadCopy, ZCLink*& APR_TailCopy
|
||||||
)
|
)
|
||||||
///////////////////////////////////////////////////*/
|
////////////////////////////////////////////////////////*/
|
||||||
|
|
||||||
|
|
||||||
void DeleteHeap(){}
|
_NP_ void DeleteHeap(){}
|
||||||
|
|
||||||
|
|
||||||
void MakeEuqal(ZtCBody& rhs)
|
_NP_ void MakeEuqal(ZtCBody& rhs)
|
||||||
{
|
{
|
||||||
}/*
|
}/*
|
||||||
void MakeEuqal(ZtCBody& rhs)*/
|
_NP_ void MakeEuqal(ZtCBody& rhs)*/
|
||||||
|
|
||||||
|
|
||||||
TypeSize GetUseHeapSize() const
|
_NP_ TypeSize GetUseHeapSize() const
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}/*
|
}/*
|
||||||
TypeSize GetUseHeapSize() const*/
|
_NP_ TypeSize GetUseHeapSize() const*/
|
||||||
|
|
||||||
TypeSize GetAllHeapSize() const
|
_NP_ TypeSize GetAllHeapSize() const
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}/*
|
}/*
|
||||||
TypeSize GetAllHeapSize() const*/
|
_NP_ TypeSize GetAllHeapSize() const*/
|
||||||
|
|
||||||
|
|
||||||
TypeSize size() const
|
_NP_ TypeSize size() const
|
||||||
{
|
{
|
||||||
return GetUseHeapSize();
|
return GetUseHeapSize();
|
||||||
}/*
|
}/*
|
||||||
TypeSize GetHeapSize() const*/
|
TypeSize size() const*/
|
||||||
|
|
||||||
TypeSize capacity() const
|
_NP_ TypeSize capacity() const
|
||||||
{
|
{
|
||||||
return GetAllHeapSize();
|
return GetAllHeapSize();
|
||||||
}/*
|
}/*
|
||||||
TypeSize GetHeapSize() const*/
|
_NP_ TypeSize capacity() const*/
|
||||||
|
|
||||||
|
|
||||||
|
_NP_ void ChangeCapacity(TypeSize AI_AddCut)
|
||||||
|
{
|
||||||
|
}/*
|
||||||
|
_NP_ void ChangeCapacity(TypeSize AI_AddCut)*/
|
||||||
|
|
||||||
};/*
|
};/*
|
||||||
template<typename TLinkList> class ZtCBody*/
|
template<typename TLinkList> class ZtCBody*/
|
||||||
@ -5602,6 +5621,19 @@ namespace ZNsMain
|
|||||||
)
|
)
|
||||||
/////////////////////////////////////////////////////*/
|
/////////////////////////////////////////////////////*/
|
||||||
|
|
||||||
|
|
||||||
|
_VT_ void ChangeCapacity(TypeSize AI_AddCut)
|
||||||
|
{
|
||||||
|
if(TTypeCRTP::ZEUseCRTP<1)
|
||||||
|
{
|
||||||
|
return; /*nothing to do*/
|
||||||
|
}/*
|
||||||
|
if(TTypeCRTP::ZEUseCRTP<1)*/
|
||||||
|
|
||||||
|
GetChildObj().ChangeCapacity(AI_AddCut);
|
||||||
|
}/*
|
||||||
|
_VT_ void ChangeCapacity(TypeSize AI_AddCut)*/
|
||||||
|
|
||||||
/*private :*/
|
/*private :*/
|
||||||
private :
|
private :
|
||||||
|
|
||||||
@ -5807,6 +5839,29 @@ namespace ZNsMain
|
|||||||
TypeData& AddTail(TypeArg AO_ArgData) ##########################*/
|
TypeData& AddTail(TypeArg AO_ArgData) ##########################*/
|
||||||
|
|
||||||
|
|
||||||
|
ZtCBaseList& AddHead(ZtCBaseList& rhs)
|
||||||
|
{
|
||||||
|
if(this == &rhs ) return *this;
|
||||||
|
if(rhs.size()<1 ) return *this;
|
||||||
|
|
||||||
|
ZtCBaseList VO_TempList(rhs);
|
||||||
|
|
||||||
|
return JoinHead(VO_TempList);
|
||||||
|
}/*
|
||||||
|
ZtCBaseList& AddHead(ZtCBaseList& rhs)*/
|
||||||
|
|
||||||
|
ZtCBaseList& AddTail(ZtCBaseList& rhs)
|
||||||
|
{
|
||||||
|
if(this == &rhs ) return *this;
|
||||||
|
if(rhs.size()<1 ) return *this;
|
||||||
|
|
||||||
|
ZtCBaseList VO_TempList(rhs);
|
||||||
|
|
||||||
|
return JoinTail(VO_TempList);
|
||||||
|
}/*
|
||||||
|
ZtCBaseList& AddTail(ZtCBaseList& rhs)*/
|
||||||
|
|
||||||
|
|
||||||
void DeleteHead()
|
void DeleteHead()
|
||||||
{
|
{
|
||||||
if(ml_LinkCnt<1) return;
|
if(ml_LinkCnt<1) return;
|
||||||
@ -5847,6 +5902,122 @@ namespace ZNsMain
|
|||||||
void DeleteTail()*/
|
void DeleteTail()*/
|
||||||
|
|
||||||
|
|
||||||
|
ZtCBaseList& JoinAfter(ZtCBaseList& rhs, ZCLink* AP_StdLink)
|
||||||
|
{
|
||||||
|
// AP_StdLink 의 뒤에 rhs 를 삽입.
|
||||||
|
|
||||||
|
if(rhs.ml_LinkCnt<1) return *this;
|
||||||
|
|
||||||
|
this->ChangeCapacity( rhs.ml_LinkCnt) ;
|
||||||
|
rhs. ChangeCapacity(-rhs.ml_LinkCnt) ;
|
||||||
|
|
||||||
|
if(AP_StdLink==0) // 맨 앞에 삽입
|
||||||
|
{
|
||||||
|
if(ml_LinkCnt<1)
|
||||||
|
{
|
||||||
|
mp_HeadLink =rhs.mp_HeadLink;
|
||||||
|
mp_TailLink =rhs.mp_TailLink;
|
||||||
|
ml_LinkCnt =rhs.ml_LinkCnt ;
|
||||||
|
}
|
||||||
|
else // ml_LinkCnt>=1
|
||||||
|
{
|
||||||
|
ZCLink::JoinLink( rhs.mp_TailLink, mp_HeadLink );
|
||||||
|
ZCLink::MakeRing( rhs.mp_HeadLink, mp_TailLink );
|
||||||
|
|
||||||
|
mp_HeadLink =rhs.mp_HeadLink;
|
||||||
|
ml_LinkCnt =rhs.ml_LinkCnt ;
|
||||||
|
}/*
|
||||||
|
else // ml_LinkCnt>=1*/
|
||||||
|
|
||||||
|
ml_LinkCnt += rhs.ml_LinkCnt;
|
||||||
|
|
||||||
|
rhs.mp_HeadLink = 0 ;
|
||||||
|
rhs.mp_TailLink = 0 ;
|
||||||
|
rhs.ml_LinkCnt = 0 ;
|
||||||
|
|
||||||
|
return *this;
|
||||||
|
}/*
|
||||||
|
if(AP_StdLink==0)*/
|
||||||
|
|
||||||
|
|
||||||
|
ZCLink* VP_StdNext=AP_StdLink->mp_NextLink;
|
||||||
|
|
||||||
|
ZCLink::JoinLink(AP_StdLink , rhs.mp_HeadLink );
|
||||||
|
ZCLink::JoinLink(rhs.mp_TailLink, VP_StdNext );
|
||||||
|
|
||||||
|
if(AP_StdLink==mp_TailLink)
|
||||||
|
{ mp_TailLink=rhs.mp_TailLink; }
|
||||||
|
|
||||||
|
rhs.mp_HeadLink=0;
|
||||||
|
rhs.mp_TailLink=0;
|
||||||
|
rhs.ml_LinkCnt =0;
|
||||||
|
|
||||||
|
ml_LinkCnt += rhs.ml_LinkCnt; return *this;
|
||||||
|
}/*
|
||||||
|
ZtCBaseList& JoinAfter(ZtCBaseList& rhs, ZCLink* AP_StdLink)*/
|
||||||
|
|
||||||
|
|
||||||
|
ZtCBaseList& JoinBefore(ZtCBaseList& rhs, ZCLink* AP_StdLink)
|
||||||
|
{
|
||||||
|
// AP_StdLink 의 앞에 rhs 를 삽입.
|
||||||
|
|
||||||
|
if(rhs.size()<1) return *this;
|
||||||
|
|
||||||
|
if(AP_StdLink==0) // 맨 뒤에 삽입
|
||||||
|
{
|
||||||
|
if(ml_LinkCnt<1)
|
||||||
|
{
|
||||||
|
mp_HeadLink =rhs.mp_HeadLink;
|
||||||
|
mp_TailLink =rhs.mp_TailLink;
|
||||||
|
ml_LinkCnt =rhs.ml_LinkCnt ;
|
||||||
|
}
|
||||||
|
else // ml_LinkCnt>=1
|
||||||
|
{
|
||||||
|
ZCLink::JoinLink(mp_TailLink, rhs.mp_HeadLink );
|
||||||
|
ZCLink::MakeRing(mp_HeadLink, rhs.mp_TailLink );
|
||||||
|
|
||||||
|
mp_TailLink = rhs.mp_TailLink ;
|
||||||
|
ml_LinkCnt += rhs.ml_LinkCnt ;
|
||||||
|
}/*
|
||||||
|
else // ml_LinkCnt>=1*/
|
||||||
|
|
||||||
|
this->ChangeCapacity( rhs.ml_LinkCnt) ;
|
||||||
|
rhs. ChangeCapacity(-rhs.ml_LinkCnt) ;
|
||||||
|
|
||||||
|
rhs.mp_HeadLink=0;
|
||||||
|
rhs.mp_TailLink=0;
|
||||||
|
rhs.ml_LinkCnt =0;
|
||||||
|
|
||||||
|
ml_LinkCnt += rhs.ml_LinkCnt; return *this;
|
||||||
|
}/*
|
||||||
|
if(AP_StdLink==0)*/
|
||||||
|
|
||||||
|
|
||||||
|
ZCLink* VP_StdPrev = AP_StdLink->mp_PrevLink;
|
||||||
|
|
||||||
|
ZCLink::JoinLink( VP_StdPrev , rhs.mp_HeadLink );
|
||||||
|
ZCLink::JoinLink(rhs.mp_TailLink, AP_StdLink );
|
||||||
|
|
||||||
|
if(AP_StdLink==mp_HeadLink)
|
||||||
|
{ mp_HeadLink = rhs.mp_HeadLink; }
|
||||||
|
|
||||||
|
this->ChangeCapacity( rhs.ml_LinkCnt) ;
|
||||||
|
rhs. ChangeCapacity(-rhs.ml_LinkCnt) ;
|
||||||
|
|
||||||
|
rhs.mp_HeadLink=0;
|
||||||
|
rhs.mp_TailLink=0;
|
||||||
|
rhs.ml_LinkCnt =0;
|
||||||
|
|
||||||
|
ml_LinkCnt += rhs.ml_LinkCnt; return *this;
|
||||||
|
}/*
|
||||||
|
ZtCBaseList& JoinBefore(ZtCBaseList& rhs, ZCLink* AP_StdLink)*/
|
||||||
|
|
||||||
|
|
||||||
|
ZtCBaseList& JoinHead(ZtCBaseList& rhs)
|
||||||
|
{ if(this==&rhs) return *this; return JoinAfter (rhs, 0); }
|
||||||
|
ZtCBaseList& JoinTail(ZtCBaseList& rhs)
|
||||||
|
{ if(this==&rhs) return *this; return JoinBefore(rhs, 0); }
|
||||||
|
|
||||||
|
|
||||||
TypeData& GetHeadData(){return mp_HeadLink->mo_Data;}
|
TypeData& GetHeadData(){return mp_HeadLink->mo_Data;}
|
||||||
TypeData& GetTailData(){return mp_TailLink->mo_Data;}
|
TypeData& GetTailData(){return mp_TailLink->mo_Data;}
|
||||||
@ -5980,6 +6151,72 @@ namespace ZNsMain
|
|||||||
###############################################################################*/
|
###############################################################################*/
|
||||||
|
|
||||||
|
|
||||||
|
template<typename TFunctor> void IterElemRev(TFunctor AO_Functor)
|
||||||
|
{
|
||||||
|
ZCLink* VP_LoopLink=mp_TailLink;
|
||||||
|
|
||||||
|
__for0(TypeSize, i, ml_LinkCnt)
|
||||||
|
{
|
||||||
|
ZtCTypeData<TFunctor>::
|
||||||
|
GetObjRef(AO_Functor)(VP_LoopLink->mo_Data);
|
||||||
|
|
||||||
|
VP_LoopLink = VP_LoopLink->mp_PrevLink ;
|
||||||
|
}/*
|
||||||
|
__for0(TypeSize, i, ml_Size)*/
|
||||||
|
}/*
|
||||||
|
template<typename TFunctor> void IterElemRev(TFunctor AO_Functor) */
|
||||||
|
|
||||||
|
template<typename TFunctor, typename TTypeHelp>
|
||||||
|
void IterElemRev(TFunctor AO_Functor, TTypeHelp AO_TypeHelp)
|
||||||
|
{
|
||||||
|
typedef ZNsMain::
|
||||||
|
ZtCCheckRef<TTypeHelp> ZCCheckRef;
|
||||||
|
|
||||||
|
ZCLink* VP_LoopLink = mp_TailLink;
|
||||||
|
|
||||||
|
__for0(TypeSize, i, ml_LinkCnt)
|
||||||
|
{
|
||||||
|
ZtCTypeData<TFunctor>::GetObjRef(AO_Functor)
|
||||||
|
(
|
||||||
|
VP_LoopLink->mo_Data, ZCCheckRef::PassData(AO_TypeHelp)
|
||||||
|
);
|
||||||
|
VP_LoopLink = VP_LoopLink->mp_PrevLink ;
|
||||||
|
}/*
|
||||||
|
__for0(TypeSize, i, ml_Size)*/
|
||||||
|
}/*
|
||||||
|
template<typename TFunctor, typename TTypeHelp>
|
||||||
|
void IterElemRev(TFunctor AO_Functor, TTypeHelp AO_TypeHelp) */
|
||||||
|
|
||||||
|
|
||||||
|
template
|
||||||
|
< typename TFunctor , typename TTypeHelp1 , typename TTypeHelp2 >
|
||||||
|
void IterElemRev
|
||||||
|
( TFunctor AO_Functor, TTypeHelp1 AO_TypeHelp1, TTypeHelp2 AO_TypeHelp2 )
|
||||||
|
/*#############################################################################*/
|
||||||
|
{
|
||||||
|
typedef ZNsMain::ZtCCheckRef<TTypeHelp1> ZCCheckRef1;
|
||||||
|
typedef ZNsMain::ZtCCheckRef<TTypeHelp2> ZCCheckRef2;
|
||||||
|
|
||||||
|
ZCLink* VP_LoopLink = mp_TailLink;
|
||||||
|
|
||||||
|
__for0(TypeSize, i, ml_LinkCnt)
|
||||||
|
{
|
||||||
|
ZtCTypeData<TFunctor>::GetObjRef(AO_Functor)
|
||||||
|
(
|
||||||
|
VP_LoopLink->mo_Data
|
||||||
|
, ZCCheckRef1::PassData(AO_TypeHelp1)
|
||||||
|
, ZCCheckRef2::PassData(AO_TypeHelp2)
|
||||||
|
);
|
||||||
|
VP_LoopLink = VP_LoopLink->mp_PrevLink ;
|
||||||
|
}/*
|
||||||
|
__for0(TypeSize, i, ml_Size)*/
|
||||||
|
}/*
|
||||||
|
template
|
||||||
|
< typename TFunctor , typename TTypeHelp1 , typename TTypeHelp2 >
|
||||||
|
void IterElemRev
|
||||||
|
( TFunctor AO_Functor, TTypeHelp1 AO_TypeHelp1, TTypeHelp2 AO_TypeHelp2 )
|
||||||
|
###############################################################################*/
|
||||||
|
|
||||||
|
|
||||||
ZCLink* GetHeadLinkPtr(){return mp_HeadLink;}
|
ZCLink* GetHeadLinkPtr(){return mp_HeadLink;}
|
||||||
ZCLink* GetTailLinkPtr(){return mp_TailLink;}
|
ZCLink* GetTailLinkPtr(){return mp_TailLink;}
|
||||||
|
@ -769,6 +769,13 @@ namespace ZNsMain
|
|||||||
}/*
|
}/*
|
||||||
TypeSize capacity() const*/
|
TypeSize capacity() const*/
|
||||||
|
|
||||||
|
|
||||||
|
void ChangeCapacity(TypeSize AI_AddCut)
|
||||||
|
{
|
||||||
|
ml_AllSize =+ AI_AddCut;
|
||||||
|
}/*
|
||||||
|
void ChangeCapacity(TypeSize AI_AddCut)*/
|
||||||
|
|
||||||
public:
|
public:
|
||||||
};/*
|
};/*
|
||||||
template<typename TObjList> class ZtCBody*/
|
template<typename TObjList> class ZtCBody*/
|
||||||
@ -1077,6 +1084,9 @@ namespace ZNsMain
|
|||||||
if(this == &AO_CObjList ) return;
|
if(this == &AO_CObjList ) return;
|
||||||
if(AO_CObjList.ml_Size<1) return;
|
if(AO_CObjList.ml_Size<1) return;
|
||||||
|
|
||||||
|
this-> ChangeCapacity( AO_CObjList.ml_LinkCnt) ;
|
||||||
|
AO_CObjList.ChangeCapacity(-AO_CObjList.ml_LinkCnt) ;
|
||||||
|
|
||||||
if(AP_LinkStd==0)
|
if(AP_LinkStd==0)
|
||||||
{
|
{
|
||||||
if(ml_Size==0)
|
if(ml_Size==0)
|
||||||
@ -1144,9 +1154,7 @@ namespace ZNsMain
|
|||||||
{
|
{
|
||||||
if(AL_CutPos==1) // 첫째 링크를 삭제.
|
if(AL_CutPos==1) // 첫째 링크를 삭제.
|
||||||
{
|
{
|
||||||
if(ml_Size==1)
|
if(ml_Size==1){ mp_HeadLink=0; }else
|
||||||
mp_HeadLink=0;
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
ZCLink::MakeRing
|
ZCLink::MakeRing
|
||||||
(
|
(
|
||||||
@ -1155,7 +1163,7 @@ namespace ZNsMain
|
|||||||
);
|
);
|
||||||
////////////////
|
////////////////
|
||||||
}/*
|
}/*
|
||||||
else*/
|
else :::::::::::::::::::::::::::::*/
|
||||||
}
|
}
|
||||||
else if(AL_CutPos==ml_Size) // 끝 링크를 삭제할 때
|
else if(AL_CutPos==ml_Size) // 끝 링크를 삭제할 때
|
||||||
ZCLink::MakeRing(mp_HeadLink , AP_CutLink->mp_PrevLink);
|
ZCLink::MakeRing(mp_HeadLink , AP_CutLink->mp_PrevLink);
|
||||||
@ -1213,7 +1221,8 @@ namespace ZNsMain
|
|||||||
}/*
|
}/*
|
||||||
else*/
|
else*/
|
||||||
|
|
||||||
ml_Size -= AL_CutTailPos-AL_CutHeadPos+1 ;
|
TypeSize VL_CutSize = AL_CutTailPos-AL_CutHeadPos+1 ;
|
||||||
|
/*++++*/ ml_Size -= VL_CutSize ;
|
||||||
|
|
||||||
// AP_CutHead 과 AP_CutTail 을 연결하여
|
// AP_CutHead 과 AP_CutTail 을 연결하여
|
||||||
// 이중 원형 연결리스트가 되도록 한다.
|
// 이중 원형 연결리스트가 되도록 한다.
|
||||||
@ -1239,8 +1248,11 @@ namespace ZNsMain
|
|||||||
|
|
||||||
#endif //_DEBUG
|
#endif //_DEBUG
|
||||||
|
|
||||||
|
this-> ChangeCapacity(-VL_CutSize) ;
|
||||||
|
ARR_StoreList.ChangeCapacity( VL_CutSize) ;
|
||||||
|
|
||||||
ARR_StoreList.mp_HeadLink = AP_CutHead ;
|
ARR_StoreList.mp_HeadLink = AP_CutHead ;
|
||||||
ARR_StoreList.ml_Size =AL_CutTailPos-AL_CutHeadPos+1;
|
ARR_StoreList.ml_Size = VL_CutSize ;
|
||||||
|
|
||||||
return ARR_StoreList;
|
return ARR_StoreList;
|
||||||
}/*
|
}/*
|
||||||
@ -1412,13 +1424,13 @@ namespace ZNsMain
|
|||||||
{
|
{
|
||||||
ZtCObjList VO_StoreList;
|
ZtCObjList VO_StoreList;
|
||||||
|
|
||||||
CutLink ///////////////////////////////////////
|
CutLink ////////////////////////////////////////
|
||||||
(
|
(
|
||||||
GetLinkPtr(rhs.ml_Size+1), rhs.ml_Size+1,
|
GetLinkPtr(rhs.ml_Size+1), rhs.ml_Size+1,
|
||||||
GetLinkPtr( ml_Size ), ml_Size ,
|
GetLinkPtr( ml_Size ), ml_Size ,
|
||||||
RR(VO_StoreList)
|
RR(VO_StoreList)
|
||||||
). DeleteAll();
|
). DeleteAll();
|
||||||
////////////////////////////////////////////////
|
/////////////////////////////////////////////////
|
||||||
}/*
|
}/*
|
||||||
else*/
|
else*/
|
||||||
|
|
||||||
@ -1454,6 +1466,10 @@ namespace ZNsMain
|
|||||||
TypeSize GetFreeSize() const
|
TypeSize GetFreeSize() const
|
||||||
{ return mo_FreeObjt.size(); }
|
{ return mo_FreeObjt.size(); }
|
||||||
|
|
||||||
|
void ChangeCapacity(TypeSize AI_AddCut) const
|
||||||
|
{ mo_FreeObjt.ChangeCapacity(AI_AddCut); }
|
||||||
|
|
||||||
|
|
||||||
ZCLink* GetHeadLinkPtr(){return mp_HeadLink;}
|
ZCLink* GetHeadLinkPtr(){return mp_HeadLink;}
|
||||||
ZCLink* GetTailLinkPtr()
|
ZCLink* GetTailLinkPtr()
|
||||||
{
|
{
|
||||||
|
@ -771,6 +771,13 @@ namespace ZNsMain
|
|||||||
}/*
|
}/*
|
||||||
TypeSize capacity() const*/
|
TypeSize capacity() const*/
|
||||||
|
|
||||||
|
|
||||||
|
void ChangeCapacity(TypeSize AI_AddCut)
|
||||||
|
{
|
||||||
|
ml_AllSize =+ AI_AddCut;
|
||||||
|
}/*
|
||||||
|
void ChangeCapacity(TypeSize AI_AddCut)*/
|
||||||
|
|
||||||
public:
|
public:
|
||||||
};/*
|
};/*
|
||||||
template<typename TSimList> class ZtCBody*/
|
template<typename TSimList> class ZtCBody*/
|
||||||
@ -1737,6 +1744,10 @@ namespace ZNsMain
|
|||||||
}/*
|
}/*
|
||||||
else*/
|
else*/
|
||||||
|
|
||||||
|
|
||||||
|
this->ChangeCapacity( rhs.ml_LinkCnt) ;
|
||||||
|
rhs. ChangeCapacity(-rhs.ml_LinkCnt) ;
|
||||||
|
|
||||||
rhs.mp_HeadLink=0;
|
rhs.mp_HeadLink=0;
|
||||||
rhs.mp_TailLink=0;
|
rhs.mp_TailLink=0;
|
||||||
rhs.ml_Size =0;
|
rhs.ml_Size =0;
|
||||||
@ -1766,6 +1777,9 @@ namespace ZNsMain
|
|||||||
}/*
|
}/*
|
||||||
else*/
|
else*/
|
||||||
|
|
||||||
|
this->ChangeCapacity( rhs.ml_LinkCnt) ;
|
||||||
|
rhs. ChangeCapacity(-rhs.ml_LinkCnt) ;
|
||||||
|
|
||||||
rhs.mp_HeadLink=0;
|
rhs.mp_HeadLink=0;
|
||||||
rhs.mp_TailLink=0;
|
rhs.mp_TailLink=0;
|
||||||
rhs.ml_Size =0;
|
rhs.ml_Size =0;
|
||||||
@ -2134,6 +2148,12 @@ namespace ZNsMain
|
|||||||
}/*
|
}/*
|
||||||
inline TypeSize GetFreeSize() const*/
|
inline TypeSize GetFreeSize() const*/
|
||||||
|
|
||||||
|
void ChangeCapacity(TypeSize AI_AddCut) const
|
||||||
|
{
|
||||||
|
mo_FreeObjt.ChangeCapacity(AI_AddCut);
|
||||||
|
}/*
|
||||||
|
void ChangeCapacity(TypeSize AI_AddCut) const*/
|
||||||
|
|
||||||
|
|
||||||
inline bool IsEmpty() const
|
inline bool IsEmpty() const
|
||||||
{
|
{
|
||||||
|
@ -134,7 +134,7 @@ namespace ZNsMain
|
|||||||
_VT_ void SendFreeOut
|
_VT_ void SendFreeOut
|
||||||
(ZTypLong AL_NeedCnt, ZCLink*& APR_HeadLink, ZCLink*& APR_TailLink)
|
(ZTypLong AL_NeedCnt, ZCLink*& APR_HeadLink, ZCLink*& APR_TailLink)
|
||||||
{
|
{
|
||||||
cout<<"** ZCBaseListEx10 : SendFreeOut(ZTypLong, ZCLink*&, ZCLink*&)"<<endl;
|
cout<<"** ZCBaseListEx10 : SendFreeOut("<<AL_NeedCnt<<", ZCLink*&, ZCLink*&)"<<endl;
|
||||||
|
|
||||||
this->ZCBaseList::NewLink(AL_NeedCnt, APR_HeadLink, APR_TailLink);
|
this->ZCBaseList::NewLink(AL_NeedCnt, APR_HeadLink, APR_TailLink);
|
||||||
}
|
}
|
||||||
@ -146,7 +146,7 @@ namespace ZNsMain
|
|||||||
)
|
)
|
||||||
/////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////
|
||||||
{
|
{
|
||||||
cout<<"** ZCBaseListEx10 : SendFreeOut(ZCLink*, ZTypLong, ZCLink*&, ZCLink*&)"<<endl;
|
cout<<"** ZCBaseListEx10 : SendFreeOut(ZCLink*, "<<AL_FarNum<<", ZCLink*&, ZCLink*&)"<<endl;
|
||||||
|
|
||||||
this->ZCBaseList::NewLinkCopy(AP_LinkOrgin, AL_FarNum, APR_HeadCopy, APR_TailCopy);
|
this->ZCBaseList::NewLinkCopy(AP_LinkOrgin, AL_FarNum, APR_HeadCopy, APR_TailCopy);
|
||||||
}
|
}
|
||||||
@ -167,11 +167,17 @@ namespace ZNsMain
|
|||||||
)
|
)
|
||||||
///////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////
|
||||||
{
|
{
|
||||||
cout<<"** ZCBaseListEx10 : RecvFreeIn(ZTypLong, AP_CutHead, AP_CutTail)"<<endl;
|
cout<<"** ZCBaseListEx10 : RecvFreeIn("<<AL_CutCnt<<", AP_CutHead, AP_CutTail)"<<endl;
|
||||||
|
|
||||||
this->ZCBaseList::DelLink(AL_CutCnt, AP_CutHead, AP_CutTail);
|
this->ZCBaseList::DelLink(AL_CutCnt, AP_CutHead, AP_CutTail);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_VT_ void ChangeCapacity(ZTypLong AI_AddCut)
|
||||||
|
{
|
||||||
|
cout<<"** ZCBaseListEx10 : ChangeCapacity("<<AI_AddCut<<")"<<endl;
|
||||||
|
}/*
|
||||||
|
_VT_ void ChangeCapacity(ZTypLong AI_AddCut)*/
|
||||||
|
|
||||||
private:
|
private:
|
||||||
};/*
|
};/*
|
||||||
class ZCBaseListEx10 : public ZtCBaseList*/
|
class ZCBaseListEx10 : public ZtCBaseList*/
|
||||||
@ -225,7 +231,7 @@ namespace ZNsMain
|
|||||||
_VT_ void SendFreeOut
|
_VT_ void SendFreeOut
|
||||||
(ZTypLong AL_NeedCnt, ZCLink*& APR_HeadLink, ZCLink*& APR_TailLink)
|
(ZTypLong AL_NeedCnt, ZCLink*& APR_HeadLink, ZCLink*& APR_TailLink)
|
||||||
{
|
{
|
||||||
cout<<"** ZCBaseListEx11 : SendFreeOut(ZTypLong, ZCLink*&, ZCLink*&)"<<endl;
|
cout<<"** ZCBaseListEx11 : SendFreeOut("<<AL_NeedCnt<<", ZCLink*&, ZCLink*&)"<<endl;
|
||||||
|
|
||||||
this->ZCBaseList::NewLink(AL_NeedCnt, APR_HeadLink, APR_TailLink);
|
this->ZCBaseList::NewLink(AL_NeedCnt, APR_HeadLink, APR_TailLink);
|
||||||
}
|
}
|
||||||
@ -237,7 +243,7 @@ namespace ZNsMain
|
|||||||
)
|
)
|
||||||
/////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////
|
||||||
{
|
{
|
||||||
cout<<"** ZCBaseListEx11 : SendFreeOut(ZCLink*, ZTypLong, ZCLink*&, ZCLink*&)"<<endl;
|
cout<<"** ZCBaseListEx11 : SendFreeOut(ZCLink*, "<<AL_FarNum<<", ZCLink*&, ZCLink*&)"<<endl;
|
||||||
|
|
||||||
this->ZCBaseList::NewLinkCopy(AP_LinkOrgin, AL_FarNum, APR_HeadCopy, APR_TailCopy);
|
this->ZCBaseList::NewLinkCopy(AP_LinkOrgin, AL_FarNum, APR_HeadCopy, APR_TailCopy);
|
||||||
}
|
}
|
||||||
@ -258,11 +264,17 @@ namespace ZNsMain
|
|||||||
)
|
)
|
||||||
///////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////
|
||||||
{
|
{
|
||||||
cout<<"** ZCBaseListEx11: RecvFreeIn(ZTypLong, AP_CutHead, AP_CutTail)"<<endl;
|
cout<<"** ZCBaseListEx11: RecvFreeIn("<<AL_CutCnt<<", AP_CutHead, AP_CutTail)"<<endl;
|
||||||
|
|
||||||
this->ZCBaseList::DelLink(AL_CutCnt, AP_CutHead, AP_CutTail);
|
this->ZCBaseList::DelLink(AL_CutCnt, AP_CutHead, AP_CutTail);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_VT_ void ChangeCapacity(ZTypLong AI_AddCut)
|
||||||
|
{
|
||||||
|
cout<<"** ZCBaseListEx11 : ChangeCapacity("<<AI_AddCut<<")"<<endl;
|
||||||
|
}/*
|
||||||
|
_VT_ void ChangeCapacity(ZTypLong AI_AddCut)*/
|
||||||
|
|
||||||
private:
|
private:
|
||||||
};/*
|
};/*
|
||||||
class ZCBaseListEx11 : public ZtCBaseList*/
|
class ZCBaseListEx11 : public ZtCBaseList*/
|
||||||
@ -348,7 +360,7 @@ namespace ZNsMain
|
|||||||
VO_ZCBaseListEx11.AddTail(VO_CStringBase("data ex 11-1"));
|
VO_ZCBaseListEx11.AddTail(VO_CStringBase("data ex 11-1"));
|
||||||
VO_ZCBaseListEx11.AddTail(VO_CStringBase("data ex 11-2"));
|
VO_ZCBaseListEx11.AddTail(VO_CStringBase("data ex 11-2"));
|
||||||
|
|
||||||
cout<<endl<<"# VO_ZCBaseListEx10_2 = VO_ZCBaseListEx11"<<endl<<endl;
|
cout<<endl<<"# VO_ZCBaseListEx10_2 = VO_ZCBaseListEx10"<<endl<<endl;
|
||||||
|
|
||||||
VO_ZCBaseListEx10_2 = VO_ZCBaseListEx10 ;
|
VO_ZCBaseListEx10_2 = VO_ZCBaseListEx10 ;
|
||||||
VO_ZCBaseListEx10_2.IterElement(&ShowDataInNode);
|
VO_ZCBaseListEx10_2.IterElement(&ShowDataInNode);
|
||||||
@ -356,14 +368,20 @@ namespace ZNsMain
|
|||||||
VO_ZCBaseListEx10.AddTail().Fetch(VO_CStringBase("data ex 10-3"));
|
VO_ZCBaseListEx10.AddTail().Fetch(VO_CStringBase("data ex 10-3"));
|
||||||
VO_ZCBaseListEx10.AddTail().Fetch(VO_CStringBase("data ex 10-4"));
|
VO_ZCBaseListEx10.AddTail().Fetch(VO_CStringBase("data ex 10-4"));
|
||||||
|
|
||||||
cout<<endl<<"# VO_ZCBaseListEx10_2 = VO_ZCBaseListEx11 after VO_ZCBaseListEx10.AddTail() 2 times"<<endl<<endl;
|
cout<<endl<<"# VO_ZCBaseListEx10_2 = VO_ZCBaseListEx10 after VO_ZCBaseListEx10.AddTail() 2 times"<<endl<<endl;
|
||||||
|
|
||||||
VO_ZCBaseListEx10_2 = VO_ZCBaseListEx10 ;
|
VO_ZCBaseListEx10_2 = VO_ZCBaseListEx10 ;
|
||||||
VO_ZCBaseListEx10_2.IterElement(&ShowDataInNode);
|
VO_ZCBaseListEx10_2.IterElement(&ShowDataInNode);
|
||||||
|
|
||||||
|
cout<<endl<<"# VO_ZCBaseListEx10_2.AddHead(VO_ZCBaseListEx10)"<<endl<<endl;
|
||||||
|
|
||||||
|
VO_ZCBaseListEx10_2.AddHead(VO_ZCBaseListEx10) ;
|
||||||
|
VO_ZCBaseListEx10_2.IterElemRev(&ShowDataInNode);
|
||||||
|
|
||||||
|
|
||||||
VO_ZCBaseListEx10_2.DeleteTail();
|
VO_ZCBaseListEx10_2.DeleteTail();
|
||||||
|
|
||||||
cout<<endl<<"# VO_ZCBaseListEx10_2DeleteTail()"<<endl<<endl;
|
cout<<endl<<"# VO_ZCBaseListEx10_2 : DeleteTail()"<<endl<<endl;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}/*
|
}/*
|
||||||
|
Reference in New Issue
Block a user