commit 2025-10-14 00:11 edit a bit ZCppMain/ZMainHead.H

This commit is contained in:
2025-10-14 00:11:29 +09:00
parent 5166bbe7cf
commit 15f24be62d
3 changed files with 81 additions and 106 deletions

View File

@ -5723,7 +5723,7 @@ namespace ZNsMain
typedef const TypeList TypeListC ;
typedef const TypeData TypeDataC ;
typedef const TypeNode TypeNodeC ; // ZCNodePoint::GetNode() const 의 반환형.
typedef const ZCLink TypeLinkC ;
typedef const TypeLink TypeLinkC ;
typedef const ZCLink ZCLinkC ;
typedef const IterEasy IterEasyC ;
@ -5808,7 +5808,7 @@ namespace ZNsMain
ZCLink& operator=(const ZCLink& rhs)*/
ZCLink* GetNextPrevPtr(TypeSize AL_FarNum)
ZCLink * GetNextPrevPtr(TypeSize AL_FarNum)
{
ZCLink* VP_TmpLink=this;
@ -5818,11 +5818,10 @@ namespace ZNsMain
return VP_TmpLink;
}/*
ZCLink* GetNextPrevPtr(TypeSize AL_FarNum)*/
const ZCLink* GetNextPrevPtr(TypeSize AL_FarNum) const
ZCLink * GetNextPrevPtr(TypeSize AL_FarNum)*/
ZCLinkC* GetNextPrevPtr(TypeSize AL_FarNum) const
{
ZCLink* VP_TmpLink=const_cast<ZCLink*>(this);
ZCLinkC* VP_TmpLink = this;
if(AL_FarNum>=0)
{ while(--AL_FarNum>=0) VP_TmpLink=VP_TmpLink->mp_NextLink; }
@ -5830,7 +5829,7 @@ namespace ZNsMain
return VP_TmpLink;
}/*
const ZCLink* GetNextPrevPtr(TypeSize AL_FarNum) const*/
ZCLinkC* GetNextPrevPtr(TypeSize AL_FarNum) const*/
operator TypeData& () {return mo_DataObjt;}
@ -5965,7 +5964,6 @@ namespace ZNsMain
++ml_CurrPos; return *this ;
}/*
const ZCNodePoint& operator++() const*/
const ZCNodePoint& operator--() const
{
mp_CurrLink = mp_CurrLink->mp_PrevLink;
@ -5983,7 +5981,6 @@ namespace ZNsMain
++ml_CurrPos ; return VO_NowPoint ;
}/*
ZCNodePoint operator++(int) const*/
ZCNodePoint operator--(int) const
{
ZCNodePoint VO_NowPoint(*this);
@ -6005,7 +6002,6 @@ namespace ZNsMain
return *this; /*:::::::::::::::::::::::::::*/
}/*
const ZCNodePoint& operator+=(TypeSize AL_Distance) const*/
const ZCNodePoint& operator-=(TypeSize AL_Distance) const
{
mp_CurrLink = &((*mp_CurrLink)-AL_Distance);
@ -6055,7 +6051,7 @@ namespace ZNsMain
return VO_ZCLinkPoint; /****************/
}/*
static ZCNodePointC MakeTailPoint(const TypeList& AR_TypeList)*/
static ZCNodePointC MakeTailPoint(const ZCNodePoint& AR_TypeIter)
static ZCNodePointC MakeTailPoint(const ZCNodePoint & AR_TypeIter)
{
ZCNodePointC VO_ZCLinkPoint(AR_TypeIter);
@ -6064,7 +6060,7 @@ namespace ZNsMain
return VO_ZCLinkPoint; /****************/
}/*
static ZCNodePointC MakeTailPoint(const ZCNodePoint& AR_TypeIter)*/
static ZCNodePointC MakeTailPoint(const ZCNodePoint & AR_TypeIter)*/
static ZCNodePointC MakeTailPoint(const ZCNodePointC& AR_TypeIter)
{
ZCNodePointC VO_ZCLinkPoint(AR_TypeIter);
@ -6078,8 +6074,8 @@ namespace ZNsMain
public :
TypeListC& GetMain() const{return mr_CurrList;}
TypeLinkC& GetNode() const{return *mp_CurrLink;}
TypeThisC& GetMain() const{return mr_CurrList;}
TypeNodeC& GetNode() const{return *mp_CurrLink;}
/***************************************************/
TypeSize GetPos () const{return ml_CurrPos ;}
/***************************************************/
@ -6093,8 +6089,8 @@ namespace ZNsMain
TypeDataC& operator*() const{return **mp_CurrLink;}
operator TypeLinkC* () const{return mp_CurrLink;}
operator TypeLinkC& () const{return *mp_CurrLink;}
operator TypeNodeC* () const{return mp_CurrLink;}
operator TypeNodeC& () const{return *mp_CurrLink;}
bool operator == (const ZCNodePointC& rhs) const

View File

@ -917,9 +917,9 @@ namespace ZNsMain
TypeDataC& operator()() const{return mo_DataObjt;}
ZCLink* GetNextPrevPtr(TypeSize AL_FarNum) // AL_FarNum 은 0 이거나 음수일 수 있다.
ZCLink * GetNextPrevPtr(TypeSize AL_FarNum) // AL_FarNum 은 0 이거나 음수일 수 있다.
{
ZCLink* VP_TmpLink=this;
ZCLink* VP_TmpLink = this;
if(AL_FarNum>=0)
{
@ -933,11 +933,10 @@ namespace ZNsMain
return VP_TmpLink;
}/*
ZCLink* GetNextPrevPtr(TypeSize AL_FarNum)*/
const ZCLink* GetNextPrevPtr(TypeSize AL_FarNum) const // or ZCLink const * const GetNextPrevPtr(TypeSize AL_FarNum) const
ZCLink * GetNextPrevPtr(TypeSize AL_FarNum)*/
ZCLinkC* GetNextPrevPtr(TypeSize AL_FarNum) const // or ZCLink const * const GetNextPrevPtr(TypeSize AL_FarNum) const
{
ZCLink* VP_TmpLink=const_cast<ZCLink*>(this);
ZCLinkC* VP_TmpLink = this;
if(AL_FarNum>=0)
{
@ -951,14 +950,14 @@ namespace ZNsMain
return VP_TmpLink;
}/*
const ZCLink* GetNextPrevPtr(TypeSize AL_FarNum) const*/
ZCLinkC* GetNextPrevPtr(TypeSize AL_FarNum) const*/
ZCLink* GetNextPtr(){return mp_NextLink;}
ZCLink* GetPrevPtr(){return mp_PrevLink;}
ZCLink * GetNextPtr() {return mp_NextLink;}
ZCLink * GetPrevPtr() {return mp_PrevLink;}
const ZCLink* GetNextPtr() const{return mp_NextLink;}
const ZCLink* GetPrevPtr() const{return mp_PrevLink;}
ZCLinkC* GetNextPtr() const{return mp_NextLink;}
ZCLinkC* GetPrevPtr() const{return mp_PrevLink;}
ZCLink* GetNextPtr(TypeSize AL_Distance)
@ -986,63 +985,63 @@ namespace ZNsMain
ZCLink* GetPrevPtr(TypeSize AL_Distance)*/
const ZCLink* GetNextPtr(TypeSize AL_Distance) const
ZCLinkC* GetNextPtr(TypeSize AL_Distance) const
{
TypeSize VL_LoopIndex=0 ;
ZCLink* VP_TmpLink =const_cast<ZCLink*>(this);
TypeSize VL_LoopIndex= 0 ;
ZCLinkC* VP_TmpLink = this ;
while(VL_LoopIndex++ < AL_Distance)
VP_TmpLink = VP_TmpLink->mp_NextLink ;
return VP_TmpLink;
}/*
const ZCLink* GetNextPtr(TypeSize AL_Distance) const*/
ZCLinkC* GetNextPtr(TypeSize AL_Distance) const*/
const ZCLink* GetPrevPtr(TypeSize AL_Distance) const
ZCLinkC* GetPrevPtr(TypeSize AL_Distance) const
{
TypeSize VL_LoopIndex=0 ;
ZCLink* VP_TmpLink = const_cast<ZCLink*>(this) ;
TypeSize VL_LoopIndex= 0 ;
ZCLinkC* VP_TmpLink = this ;
while(VL_LoopIndex++ < AL_Distance)
VP_TmpLink = VP_TmpLink->mp_PrevLink ;
return VP_TmpLink;
}/*
const ZCLink* GetPrevPtr(TypeSize AL_Distance) const*/
ZCLinkC* GetPrevPtr(TypeSize AL_Distance) const*/
ZCLink& operator+(TypeSize AL_Distance)
ZCLink & operator+(TypeSize AL_Distance)
{
if(AL_Distance>=0)
return *GetNextPtr(AL_Distance);
else return *GetPrevPtr(AL_Distance);
}/*
ZCLink& operator+(TypeSize AL_Distance)*/
ZCLink & operator+(TypeSize AL_Distance)*/
ZCLink& operator-(TypeSize AL_Distance)
ZCLink & operator-(TypeSize AL_Distance)
{
if(AL_Distance>=0)
return *GetPrevPtr(AL_Distance);
else return *GetNextPtr(AL_Distance);
}/*
ZCLink& operator-(TypeSize AL_Distance)*/
ZCLink & operator-(TypeSize AL_Distance)*/
const ZCLink& operator+(TypeSize AL_Distance) const
ZCLinkC& operator+(TypeSize AL_Distance) const
{
if(AL_Distance>=0)
return *GetNextPtr(AL_Distance);
else return *GetPrevPtr(AL_Distance);
}/*
const ZCLink& operator+(TypeSize AL_Distance) const*/
ZCLinkC& operator+(TypeSize AL_Distance) const*/
const ZCLink& operator-(TypeSize AL_Distance) const
ZCLinkC& operator-(TypeSize AL_Distance) const
{
if(AL_Distance>=0)
return *GetPrevPtr(AL_Distance);
else return *GetNextPtr(AL_Distance);
}/*
const ZCLink& operator-(TypeSize AL_Distance) const*/
ZCLinkC& operator-(TypeSize AL_Distance) const*/
public:
};/*
@ -1266,8 +1265,8 @@ namespace ZNsMain
public :
TypeListC& GetMain() const{return mr_CurrList;}
TypeLinkC& GetNode() const{return *mp_CurrLink;}
TypeThisC& GetMain() const{return mr_CurrList;}
TypeNodeC& GetNode() const{return *mp_CurrLink;}
/***************************************************/
TypeSize GetPos () const{return ml_CurrPos ;}
/***************************************************/
@ -1281,8 +1280,8 @@ namespace ZNsMain
TypeDataC& operator*() const{return **mp_CurrLink;}
operator TypeLinkC* () const{return mp_CurrLink;}
operator TypeLinkC& () const{return *mp_CurrLink;}
operator TypeNodeC* () const{return mp_CurrLink;}
operator TypeNodeC& () const{return *mp_CurrLink;}
bool operator == (const ZCNodePointC& rhs) const

View File

@ -918,7 +918,7 @@ namespace ZNsMain
ZCLink* GetNextPtr(TypeSize AL_FarNum)*/
const ZCLink* const GetNextPtr(TypeSize AL_FarNum) const // or ZCLink const * const GetNextPtr(TypeSize AL_FarNum) const
ZCLinkC* const GetNextPtr(TypeSize AL_FarNum) const // or ZCLink const * const GetNextPtr(TypeSize AL_FarNum) const
{
// TypeSize 가 object 일 경우 AL_FarNum 의 값이 이 함수에서 변하고 있으므로
// TypeSize 을 참조로 받으면 안된다.
@ -935,20 +935,11 @@ namespace ZNsMain
return VP_TmpLink;
}/*
const ZCLink* const GetNextPtr(TypeSize AL_FarNum) const*/
ZCLinkC* const GetNextPtr(TypeSize AL_FarNum) const*/
inline ZCLink* GetNextPtr()
{
return mp_NextLink;
}/*
inline ZCLink* GetNextPtr()*/
inline const ZCLink* const GetNextPtr() const
{
return mp_NextLink;
}/*
inline const ZCLink* const GetNextPtr() const*/
inline ZCLink * GetNextPtr() { return mp_NextLink; }
inline ZCLinkC* const GetNextPtr() const{ return mp_NextLink; }
ZCLink& operator=(TypeArg AR_Type)
{
@ -1261,9 +1252,9 @@ namespace ZNsMain
ZtCSimList& CopyLink /*######################################*/
(
const ZCLink* const AP_CopyLink ,
TypeSize AL_FarNum ,
ZtCSimList& ARR_Rhs
ZCLinkC* const AP_CopyLink ,
TypeSize AL_FarNum ,
ZtCSimList& ARR_Rhs
) const
/*###########################################################*/
{
@ -1294,9 +1285,9 @@ namespace ZNsMain
}/*
ZtCSimList& CopyLink ##########################################
(
const ZCLink* const AP_CopyLink ,
TypeSize AL_FarNum ,
ZtCSimList& ARR_Rhs
ZCLinkC* const AP_CopyLink ,
TypeSize AL_FarNum ,
ZtCSimList& ARR_Rhs
) const
#############################################################*/
@ -1679,29 +1670,29 @@ namespace ZNsMain
void AddTailDef(TypeSize AL_DefaultSize)*/
ZCLink* GetHeadLinkPtr (){return mp_HeadLink;}
ZCLink* GetHeadIterEasy (){return mp_HeadLink;}
IterEasyID GetHeadIterEasyID (){return (IterEasyID)mp_HeadLink;}
TypeData & front() {return mp_HeadLink->mo_DataObjt;}
TypeData & back () {return mp_TailLink->mo_DataObjt;}
ZCLink* GetTailLinkPtr (){return mp_TailLink;}
ZCLink* GetTailIterEasy (){return mp_TailLink;}
IterEasyID GetTailIterEasyID (){return (IterEasyID)mp_TailLink;}
TypeDataC& front() const{return mp_HeadLink->mo_DataObjt;}
TypeDataC& back () const{return mp_TailLink->mo_DataObjt;}
TypeData& front(){return mp_HeadLink->mo_DataObjt;}
TypeData& back (){return mp_TailLink->mo_DataObjt;}
ZCLink * GetHeadLinkPtr () {return mp_HeadLink;}
ZCLink * GetHeadIterEasy () {return mp_HeadLink;}
IterEasyID GetHeadIterEasyID () {return (IterEasyID)mp_HeadLink;}
ZCLink * GetTailLinkPtr () {return mp_TailLink;}
ZCLink * GetTailIterEasy () {return mp_TailLink;}
IterEasyID GetTailIterEasyID () {return (IterEasyID)mp_TailLink;}
ZCLinkC* GetHeadLinkPtr () const{return mp_HeadLink;}
ZCLinkC* GetHeadIterEasy () const{return mp_HeadLink;}
IterEasyIDc GetHeadIterEasyID() const{return (IterEasyID)mp_HeadLink;}
IterEasyIDc GetHeadIterEasyID () const{return (IterEasyID)mp_HeadLink;}
ZCLinkC* GetTailLinkPtr () const{return mp_TailLink;}
ZCLinkC* GetTailIterEasy () const{return mp_TailLink;}
IterEasyIDc GetTailIterEasyID () const{return (IterEasyID)mp_TailLink;}
TypeDataC& front() const{return mp_HeadLink->mo_DataObjt;}
TypeDataC& back () const{return mp_TailLink->mo_DataObjt;}
void pop_back (TypeArg AR_Type){ return AddHead(AR_Type); }
void push_back(TypeArg AR_Type){ return AddTail(AR_Type); }
@ -1957,7 +1948,7 @@ namespace ZNsMain
void clear(){DeleteAll();}
TypeSize Find(const ZCLink* AP_pSearchLink, TypeSize AL_FirstFindIndex=1) const
TypeSize Find(ZCLinkC* AP_pSearchLink, TypeSize AL_FirstFindIndex=1) const
{
const bool CB_DoStop = //////////////////////
(
@ -2034,25 +2025,14 @@ namespace ZNsMain
TypeSize FindData(TypeArg AR_TypeArg, TypeSize AL_FirstFindIndex=1) const*/
ZCLink* GetLinkPtr(TypeSize AL_Index)
{
return mp_HeadLink->GetNextPtr(AL_Index-1);
}/*
ZCLink* GetLinkPtr(TypeSize AL_Index)*/
ZCLink * GetLinkPtr(TypeSize AL_Index)
{ return mp_HeadLink->GetNextPtr(AL_Index-1); }
ZCLinkC* GetLinkPtr(TypeSize AL_Index) const
{ return mp_HeadLink->GetNextPtr(AL_Index-1); }
const ZCLink* GetLinkPtr(TypeSize AL_Index) const
{
return mp_HeadLink->GetNextPtr(AL_Index-1);
}/*
const ZCLink* GetLinkPtr(TypeSize AL_Index) const*/
ZCFreeHeap& GetCFreeHeap() const
{
return mo_FreeObjt;
}/*
ZCFreeHeap& GetCFreeHeap() const*/
ZCFreeHeap& GetCFreeHeap() const{return mo_FreeObjt;}
inline TypeSize GetSize() const
@ -2329,11 +2309,11 @@ namespace ZNsMain
void MoveNextIter(IterEasyID& APPI_IterEasyID)
{ MoveNextIter((ZCLink*&)APPI_IterEasyID) ; }
void MoveNextIter(const ZCLink*& APR_CLink) const
void MoveNextIter(ZCLinkC*& APR_CLink) const
{ APR_CLink=APR_CLink->GetNextPtr() ; }
void MoveNextIter(IterEasyIDc& APPI_IterEasyID) const
{ MoveNextIter((const ZCLink*&)APPI_IterEasyID) ; }
{ MoveNextIter((ZCLinkC*&)APPI_IterEasyID) ; }
void MoveNextIter(iterator & ARR_iterator)
{ ++ARR_iterator ; }
@ -2351,20 +2331,20 @@ namespace ZNsMain
TypeData & GetDataInIter(iterator & ARR_iterator)
{ return *ARR_iterator ; }
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
TypeDataC& GetDataInIter(const ZCLink* AP_CLink) const
TypeDataC& GetDataInIter(ZCLinkC* AP_CLink) const
{ return **AP_CLink ; }
TypeDataC& GetDataInIter(IterEasyIDc APPI_IterEasyID) const
{ return GetDataInIter((const ZCLink*)APPI_IterEasyID) ; }
{ return GetDataInIter((ZCLinkC*)APPI_IterEasyID) ; }
TypeDataC& GetDataInIter(iteratorC& ARR_iterator) const
{ return *ARR_iterator ; }
ZCLink* ItHEasy() {return mp_HeadLink;}
ZCLink * ItHEasy() {return mp_HeadLink;}
IterEasyID ItHID () {return (IterEasyID)mp_HeadLink;}
ZCLink* ItTEasy() {return mp_TailLink;}
ZCLink * ItTEasy() {return mp_TailLink;}
IterEasyID ItTID () {return (IterEasyID)mp_TailLink;}
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
ZCLinkC* ItHEasy() const{return mp_HeadLink;}
@ -2412,10 +2392,10 @@ namespace ZNsMain
{ return *ARR_Iterator; }
iterator begin () { return ZCNodePoint (*this); }
iteratorC begin () const{ return ZNodekPointC(*this); }
iterator end () { return ZCNodePoint ::MakeTailPoint(*this); }
iteratorC end () const{ return ZNodekPointC::MakeTailPoint(*this); }
iterator begin () { return ZCNodePoint (*this); }
iteratorC begin () const{ return ZNodekPointC(*this); }
iterator end () { return ZCNodePoint ::MakeTailPoint(*this); }
iteratorC end () const{ return ZNodekPointC::MakeTailPoint(*this); }
ZCLink * HeadPtr() {return mp_HeadLink;}