commit 2025-10-03 04:31 add RecvFreeIn() etc in ZtCBaseList : ZCppMain/ZMainHead.H
This commit is contained in:
@ -88,10 +88,7 @@ namespace ZNsMain
|
||||
|
||||
class ZCBaseListEx10 : public ZtCBaseList
|
||||
<
|
||||
CStringBase
|
||||
, CStringBase&
|
||||
, ZCAllocator
|
||||
, ZTypLong
|
||||
CStringBase, CStringBase&, ZCAllocator, ZTypLong
|
||||
, ZNsMain::ZtCMoveObj <CStringBase, CStringBase&, true>
|
||||
, ZNsType::ZtCTypeCRTP<ZCBaseListEx10, true>
|
||||
>
|
||||
@ -100,10 +97,7 @@ namespace ZNsMain
|
||||
|
||||
typedef ZtCBaseList ///////////////////////////////////////////////////////
|
||||
<
|
||||
CStringBase
|
||||
, CStringBase&
|
||||
, ZCAllocator
|
||||
, ZTypLong
|
||||
CStringBase, CStringBase&, ZCAllocator, ZTypLong
|
||||
, ZNsMain::ZtCMoveObj <CStringBase, CStringBase&, true>
|
||||
, ZNsType::ZtCTypeCRTP<ZCBaseListEx10, true>
|
||||
>
|
||||
@ -111,10 +105,7 @@ namespace ZNsMain
|
||||
|
||||
friend class ZtCBaseList //////////////////////////////////////////////////
|
||||
<
|
||||
CStringBase
|
||||
, CStringBase&
|
||||
, ZCAllocator
|
||||
, ZTypLong
|
||||
CStringBase, CStringBase&, ZCAllocator, ZTypLong
|
||||
, ZNsMain::ZtCMoveObj <CStringBase, CStringBase&, true>
|
||||
, ZNsType::ZtCTypeCRTP<ZCBaseListEx10, true>
|
||||
>;
|
||||
@ -124,29 +115,62 @@ namespace ZNsMain
|
||||
|
||||
private:
|
||||
|
||||
_VT_ ZCLink* NewLink()
|
||||
_VT_ ZCLink* SendFreeOut()
|
||||
{
|
||||
cout<<"** ZCBaseListEx10 : NewLink()"<<endl;
|
||||
cout<<"** ZCBaseListEx10 : SendFreeOut()"<<endl;
|
||||
|
||||
return new ZCLink;
|
||||
return this->ZCBaseList::NewLink();
|
||||
}/*
|
||||
_VT_ ZCLink* NewLink()*/
|
||||
_VT_ ZCLink* SendFreeOut()*/
|
||||
|
||||
_VT_ ZCLink* NewLink(CStringBase& AO_ArgData)
|
||||
_VT_ ZCLink* SendFreeOut(CStringBase& AO_ArgData)
|
||||
{
|
||||
cout<<"** ZCBaseListEx10 : NewLink(TypeArg)"<<endl;
|
||||
cout<<"** ZCBaseListEx10 : SendFreeOut(TypeArg)"<<endl;
|
||||
|
||||
return new ZCLink(AO_ArgData);
|
||||
return this->ZCBaseList::NewLink(AO_ArgData);
|
||||
}/*
|
||||
_VT_ ZCLink* NewLink(CStringBase& AO_ArgData)*/
|
||||
_VT_ ZCLink* SendFreeOut(CStringBase& AO_ArgData)*/
|
||||
|
||||
_VT_ void DelLink(ZCLink* AP_DelLink)
|
||||
_VT_ void SendFreeOut
|
||||
(ZTypLong AL_NeedCnt, ZCLink*& APR_HeadLink, ZCLink*& APR_TailLink)
|
||||
{
|
||||
cout<<"** ZCBaseListEx10 : DelLink(ZCLink*)"<<endl;
|
||||
cout<<"** ZCBaseListEx10 : SendFreeOut(ZTypLong, ZCLink*&, ZCLink*&)"<<endl;
|
||||
|
||||
delete AP_DelLink;
|
||||
this->ZCBaseList::NewLink(AL_NeedCnt, APR_HeadLink, APR_TailLink);
|
||||
}
|
||||
|
||||
_VT_ void SendFreeOutCopy /*///////////////////////*/
|
||||
(
|
||||
ZCLink* AP_LinkOrgin, ZTypLong AL_FarNum ,
|
||||
ZCLink*& APR_HeadCopy, ZCLink*& APR_TailCopy
|
||||
)
|
||||
/////////////////////////////////////////////////////
|
||||
{
|
||||
cout<<"** ZCBaseListEx10 : SendFreeOut(ZCLink*, ZTypLong, ZCLink*&, ZCLink*&)"<<endl;
|
||||
|
||||
this->ZCBaseList::NewLinkCopy(AP_LinkOrgin, AL_FarNum, APR_HeadCopy, APR_TailCopy);
|
||||
}
|
||||
|
||||
_VT_ void RecvFreeIn(ZCLink* AP_DelLink)
|
||||
{
|
||||
cout<<"** ZCBaseListEx10 : RecvFreeIn(AP_DelLink)"<<endl;
|
||||
|
||||
this->ZCBaseList::DelLink(AP_DelLink);
|
||||
}/*
|
||||
_VT_ void DelLink(ZCLink* AP_DelLink)*/
|
||||
_VT_ void RecvFreeIn(ZCLink* AP_DelLink)*/
|
||||
|
||||
_VT_ void RecvFreeIn //////////////////////////////////
|
||||
(
|
||||
ZTypLong AL_CutCnt ,
|
||||
ZCLink* AP_CutHead,
|
||||
ZCLink* AP_CutTail
|
||||
)
|
||||
///////////////////////////////////////////////////////
|
||||
{
|
||||
cout<<"** ZCBaseListEx10 : RecvFreeIn(ZTypLong, AP_CutHead, AP_CutTail)"<<endl;
|
||||
|
||||
this->ZCBaseList::DelLink(AL_CutCnt, AP_CutHead, AP_CutTail);
|
||||
}
|
||||
|
||||
private:
|
||||
};/*
|
||||
@ -155,10 +179,7 @@ namespace ZNsMain
|
||||
|
||||
class ZCBaseListEx11 : public ZtCBaseList
|
||||
<
|
||||
CStringBase
|
||||
, CStringBase&
|
||||
, ZCAllocator
|
||||
, ZTypLong
|
||||
CStringBase, CStringBase&, ZCAllocator, ZTypLong
|
||||
, ZNsMain::ZtCMoveObj <CStringBase, CStringBase&, true>
|
||||
, ZNsType::ZtCTypeCRTP<ZCBaseListEx11, false>
|
||||
>
|
||||
@ -167,10 +188,7 @@ namespace ZNsMain
|
||||
|
||||
typedef ZtCBaseList ///////////////////////////////////////////////////////
|
||||
<
|
||||
CStringBase
|
||||
, CStringBase&
|
||||
, ZCAllocator
|
||||
, ZTypLong
|
||||
CStringBase, CStringBase&, ZCAllocator, ZTypLong
|
||||
, ZNsMain::ZtCMoveObj <CStringBase, CStringBase&, true>
|
||||
, ZNsType::ZtCTypeCRTP<ZCBaseListEx11, false>
|
||||
>
|
||||
@ -178,10 +196,7 @@ namespace ZNsMain
|
||||
|
||||
friend class ZtCBaseList //////////////////////////////////////////////////
|
||||
<
|
||||
CStringBase
|
||||
, CStringBase&
|
||||
, ZCAllocator
|
||||
, ZTypLong
|
||||
CStringBase, CStringBase&, ZCAllocator, ZTypLong
|
||||
, ZNsMain::ZtCMoveObj <CStringBase, CStringBase&, true>
|
||||
, ZNsType::ZtCTypeCRTP<ZCBaseListEx11, false>
|
||||
>;
|
||||
@ -191,29 +206,62 @@ namespace ZNsMain
|
||||
|
||||
private:
|
||||
|
||||
_VT_ ZCLink* NewLink()
|
||||
_VT_ ZCLink* SendFreeOut()
|
||||
{
|
||||
cout<<"** ZCBaseListEx11 : NewLink()"<<endl;
|
||||
cout<<"** ZCBaseListEx11 : SendFreeOut()"<<endl;
|
||||
|
||||
return new ZCLink;
|
||||
return this->ZCBaseList::NewLink();
|
||||
}/*
|
||||
_VT_ ZCLink* NewLink()*/
|
||||
_VT_ ZCLink* SendFreeOut()*/
|
||||
|
||||
_VT_ ZCLink* NewLink(CStringBase& AO_ArgData)
|
||||
_VT_ ZCLink* SendFreeOut(CStringBase& AO_ArgData)
|
||||
{
|
||||
cout<<"** ZCBaseListEx11 : NewLink(TypeArg)"<<endl;
|
||||
cout<<"** ZCBaseListEx11 : SendFreeOut(CStringBase&)"<<endl;
|
||||
|
||||
return new ZCLink(AO_ArgData);
|
||||
return this->ZCBaseList::NewLink(AO_ArgData);
|
||||
}/*
|
||||
_VT_ ZCLink* NewLink(CStringBase& AO_ArgData)*/
|
||||
_VT_ ZCLink* SendFreeOut(CStringBase& AO_ArgData)*/
|
||||
|
||||
_VT_ void DelLink(ZCLink* AP_DelLink)
|
||||
_VT_ void SendFreeOut
|
||||
(ZTypLong AL_NeedCnt, ZCLink*& APR_HeadLink, ZCLink*& APR_TailLink)
|
||||
{
|
||||
cout<<"** ZCBaseListEx11 : DelLink(ZCLink*)"<<endl;
|
||||
cout<<"** ZCBaseListEx11 : SendFreeOut(ZTypLong, ZCLink*&, ZCLink*&)"<<endl;
|
||||
|
||||
delete AP_DelLink;
|
||||
this->ZCBaseList::NewLink(AL_NeedCnt, APR_HeadLink, APR_TailLink);
|
||||
}
|
||||
|
||||
_VT_ void SendFreeOutCopy /*///////////////////////*/
|
||||
(
|
||||
ZCLink* AP_LinkOrgin, ZTypLong AL_FarNum ,
|
||||
ZCLink*& APR_HeadCopy, ZCLink*& APR_TailCopy
|
||||
)
|
||||
/////////////////////////////////////////////////////
|
||||
{
|
||||
cout<<"** ZCBaseListEx11 : SendFreeOut(ZCLink*, ZTypLong, ZCLink*&, ZCLink*&)"<<endl;
|
||||
|
||||
this->ZCBaseList::NewLinkCopy(AP_LinkOrgin, AL_FarNum, APR_HeadCopy, APR_TailCopy);
|
||||
}
|
||||
|
||||
_VT_ void RecvFreeIn(ZCLink* AP_DelLink)
|
||||
{
|
||||
cout<<"** ZCBaseListEx11 : RecvFreeIn(AP_DelLink)"<<endl;
|
||||
|
||||
this->ZCBaseList::DelLink(AP_DelLink);
|
||||
}/*
|
||||
_VT_ void DelLink(ZCLink* AP_DelLink)*/
|
||||
_VT_ void RecvFreeIn(ZCLink* AP_DelLink)*/
|
||||
|
||||
_VT_ void RecvFreeIn //////////////////////////////////
|
||||
(
|
||||
ZTypLong AL_CutCnt ,
|
||||
ZCLink* AP_CutHead,
|
||||
ZCLink* AP_CutTail
|
||||
)
|
||||
///////////////////////////////////////////////////////
|
||||
{
|
||||
cout<<"** ZCBaseListEx11: RecvFreeIn(ZTypLong, AP_CutHead, AP_CutTail)"<<endl;
|
||||
|
||||
this->ZCBaseList::DelLink(AL_CutCnt, AP_CutHead, AP_CutTail);
|
||||
}
|
||||
|
||||
private:
|
||||
};/*
|
||||
@ -286,15 +334,37 @@ namespace ZNsMain
|
||||
VO_CIntList.IterElement(StFunctor6::ShowElement, ZftMCP(VO_CHelpObj), VO_CHelpObj );
|
||||
|
||||
|
||||
ZCBaseListEx10 VO_ZCBaseListEx10;
|
||||
ZCBaseListEx11 VO_ZCBaseListEx11;
|
||||
cout<<endl<<"#### ZCBaseListEx10 and ZCBaseListEx11 ####"<<endl<<endl;
|
||||
|
||||
VO_ZCBaseListEx10.AddTail(VO_CStringBase("data ex 11-1"));
|
||||
VO_ZCBaseListEx10.AddTail(VO_CStringBase("data ex 11-2"));
|
||||
ZCBaseListEx10 VO_ZCBaseListEx10 ;
|
||||
ZCBaseListEx10 VO_ZCBaseListEx10_2;
|
||||
ZCBaseListEx11 VO_ZCBaseListEx11 ;
|
||||
|
||||
VO_CStringBase="";
|
||||
|
||||
VO_ZCBaseListEx10.AddTail(VO_CStringBase("data ex 10-1"));
|
||||
VO_ZCBaseListEx10.AddTail(VO_CStringBase("data ex 10-2"));
|
||||
|
||||
VO_ZCBaseListEx11.AddTail(VO_CStringBase("data ex 11-1"));
|
||||
VO_ZCBaseListEx11.AddTail(VO_CStringBase("data ex 11-2"));
|
||||
|
||||
cout<<endl<<"# VO_ZCBaseListEx10_2 = VO_ZCBaseListEx11"<<endl<<endl;
|
||||
|
||||
VO_ZCBaseListEx10_2 = VO_ZCBaseListEx10 ;
|
||||
VO_ZCBaseListEx10_2.IterElement(&ShowDataInNode);
|
||||
|
||||
VO_ZCBaseListEx10.AddTail().Fetch(VO_CStringBase("data ex 10-3"));
|
||||
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;
|
||||
|
||||
VO_ZCBaseListEx10_2 = VO_ZCBaseListEx10 ;
|
||||
VO_ZCBaseListEx10_2.IterElement(&ShowDataInNode);
|
||||
|
||||
VO_ZCBaseListEx10_2.DeleteTail();
|
||||
|
||||
cout<<endl<<"# VO_ZCBaseListEx10_2DeleteTail()"<<endl<<endl;
|
||||
|
||||
return 0;
|
||||
}/*
|
||||
static int Main(int AI_ArgCnt=0, char* APP_ArgVal[]=0)*/
|
||||
|
Reference in New Issue
Block a user