commit 2025-10-12 23:10 edit a bit ZCppMain/ZtCObjList.H
This commit is contained in:
@ -5692,6 +5692,8 @@ namespace ZNsMain
|
||||
typedef const iterator iteratorC ;
|
||||
typedef const IterEasy IterEasyC ;
|
||||
/*************************************************************************/
|
||||
typedef const TypeThis TypeThisC ;
|
||||
typedef const TypeList TypeListC ;
|
||||
typedef const TypeData TypeDataC ;
|
||||
typedef const ZCLink TypeLinkC ;
|
||||
typedef const ZCLink ZCLinkC ;
|
||||
@ -5862,8 +5864,14 @@ namespace ZNsMain
|
||||
ZCLinkPoint& operator= (const ZCLinkPoint& rhs){ return *this; }
|
||||
|
||||
|
||||
/***/ TypeData& operator*() {return **mp_CurrLink;}
|
||||
const TypeData& operator*() const{return **mp_CurrLink;}
|
||||
TypeData & operator*() {return **mp_CurrLink;}
|
||||
TypeDataC& operator*() const{return **mp_CurrLink;}
|
||||
|
||||
operator TypeLink * () {return mp_CurrLink;}
|
||||
operator TypeLinkC* () const{return mp_CurrLink;}
|
||||
|
||||
operator TypeLink & () {return *mp_CurrLink;}
|
||||
operator TypeLinkC& () const{return *mp_CurrLink;}
|
||||
|
||||
|
||||
const ZCLinkPoint& operator++() const
|
||||
@ -8025,150 +8033,121 @@ namespace ZNsMain
|
||||
###############################################################################*/
|
||||
|
||||
|
||||
ZCLink* GetHeadLinkPtr(){return mp_HeadLink;}
|
||||
ZCLink* GetTailLinkPtr(){return mp_TailLink;}
|
||||
ZCLink * GetHeadLinkPtr() {return mp_HeadLink;}
|
||||
ZCLink * GetTailLinkPtr() {return mp_TailLink;}
|
||||
|
||||
const ZCLink* GetHeadLinkPtr() const{return mp_HeadLink;}
|
||||
const ZCLink* GetTailLinkPtr() const{return mp_TailLink;}
|
||||
ZCLinkC* GetHeadLinkPtr() const{return mp_HeadLink;}
|
||||
ZCLinkC* GetTailLinkPtr() const{return mp_TailLink;}
|
||||
|
||||
ZCLink* GetLinkPtr(TypeSize AI_Index) {return mp_HeadLink->GetNextPrevPtr(AI_Index-1);}
|
||||
const ZCLink* GetLinkPtr(TypeSize AI_Index) const{return mp_HeadLink->GetNextPrevPtr(AI_Index-1);}
|
||||
ZCLink * GetLinkPtr(TypeSize AI_Index) {return mp_HeadLink->GetNextPrevPtr(AI_Index-1);}
|
||||
ZCLinkC* GetLinkPtr(TypeSize AI_Index) const{return mp_HeadLink->GetNextPrevPtr(AI_Index-1);}
|
||||
|
||||
|
||||
ZCLink& GetHeadLink(TypeSize AI_Distance){return (*mp_HeadLink)+AI_Distance;}
|
||||
ZCLink& GetTailLink(TypeSize AI_Distance){return (*mp_TailLink)-AI_Distance;}
|
||||
ZCLink & GetHeadLink(TypeSize AI_Distance) {return (*mp_HeadLink)+AI_Distance;}
|
||||
ZCLink & GetTailLink(TypeSize AI_Distance) {return (*mp_TailLink)-AI_Distance;}
|
||||
|
||||
const ZCLink& GetHeadLink(TypeSize AI_Distance) const{return (*mp_HeadLink)+AI_Distance;}
|
||||
const ZCLink& GetTailLink(TypeSize AI_Distance) const{return (*mp_TailLink)-AI_Distance;}
|
||||
ZCLinkC& GetHeadLink(TypeSize AI_Distance) const{return (*mp_HeadLink)+AI_Distance;}
|
||||
ZCLinkC& GetTailLink(TypeSize AI_Distance) const{return (*mp_TailLink)-AI_Distance;}
|
||||
|
||||
|
||||
ZCLink& GetLink(TypeSize AI_Index) {return (*mp_HeadLink)+(AI_Index-1);}
|
||||
const ZCLink& GetLink(TypeSize AI_Index) const{return (*mp_HeadLink)+(AI_Index-1);}
|
||||
ZCLink & GetLink(TypeSize AI_Index) {return (*mp_HeadLink)+(AI_Index-1);}
|
||||
ZCLinkC& GetLink(TypeSize AI_Index) const{return (*mp_HeadLink)+(AI_Index-1);}
|
||||
|
||||
|
||||
ZCLink* HeadPtr(){return mp_HeadLink;}
|
||||
ZCLink* TailPtr(){return mp_TailLink;}
|
||||
ZCLink * HeadPtr() {return mp_HeadLink;}
|
||||
ZCLink * TailPtr() {return mp_TailLink;}
|
||||
ZCLinkC* HeadPtr() const{return mp_HeadLink;}
|
||||
ZCLinkC* TailPtr() const{return mp_TailLink;}
|
||||
|
||||
ZCLink* HeadPtr(TypeSize AI_Distance){return &((*mp_HeadLink)+AI_Distance);}
|
||||
ZCLink* TailPtr(TypeSize AI_Distance){return &((*mp_TailLink)-AI_Distance);}
|
||||
ZCLink * HeadPtr(TypeSize AI_Distance) {return &((*mp_HeadLink)+AI_Distance);}
|
||||
ZCLink * TailPtr(TypeSize AI_Distance) {return &((*mp_TailLink)-AI_Distance);}
|
||||
|
||||
const ZCLink* HeadPtr() const{return mp_HeadLink;}
|
||||
const ZCLink* TailPtr() const{return mp_TailLink;}
|
||||
|
||||
const ZCLink* HeadPtr(TypeSize AI_Distance) const{return &((*mp_HeadLink)+AI_Distance);}
|
||||
const ZCLink* TailPtr(TypeSize AI_Distance) const{return &((*mp_TailLink)-AI_Distance);}
|
||||
ZCLinkC* HeadPtr(TypeSize AI_Distance) const{return &((*mp_HeadLink)+AI_Distance);}
|
||||
ZCLinkC* TailPtr(TypeSize AI_Distance) const{return &((*mp_TailLink)-AI_Distance);}
|
||||
|
||||
|
||||
ZCLink& HeadRef(){return *mp_HeadLink;}
|
||||
ZCLink& TailRef(){return *mp_TailLink;}
|
||||
ZCLink & HeadRef() {return *mp_HeadLink;}
|
||||
ZCLink & TailRef() {return *mp_TailLink;}
|
||||
|
||||
ZCLink& HeadRef(TypeSize AI_Distance){return (*mp_HeadLink)+AI_Distance;}
|
||||
ZCLink& TailRef(TypeSize AI_Distance){return (*mp_TailLink)-AI_Distance;}
|
||||
ZCLinkC& HeadRef() const{return *mp_HeadLink;}
|
||||
ZCLinkC& TailRef() const{return *mp_TailLink;}
|
||||
|
||||
const ZCLink& HeadRef() const{return *mp_HeadLink;}
|
||||
const ZCLink& TailRef() const{return *mp_TailLink;}
|
||||
ZCLink & HeadRef(TypeSize AI_Distance) {return (*mp_HeadLink)+AI_Distance;}
|
||||
ZCLink & TailRef(TypeSize AI_Distance) {return (*mp_TailLink)-AI_Distance;}
|
||||
|
||||
const ZCLink& HeadRef(TypeSize AI_Distance) const{return (*mp_HeadLink)+AI_Distance;}
|
||||
const ZCLink& TailRef(TypeSize AI_Distance) const{return (*mp_TailLink)-AI_Distance;}
|
||||
ZCLinkC& HeadRef(TypeSize AI_Distance) const{return (*mp_HeadLink)+AI_Distance;}
|
||||
ZCLinkC& TailRef(TypeSize AI_Distance) const{return (*mp_TailLink)-AI_Distance;}
|
||||
|
||||
|
||||
ZCLinkOpt HeadOpt(){return ZCLinkOpt(mp_HeadLink);}
|
||||
ZCLinkOpt TailOpt(){return ZCLinkOpt(mp_TailLink);}
|
||||
ZCLinkOpt HeadOpt() {return ZCLinkOpt(mp_HeadLink);}
|
||||
ZCLinkOpt TailOpt() {return ZCLinkOpt(mp_TailLink);}
|
||||
|
||||
ZCLinkOpt HeadOpt(TypeSize AI_Distance)
|
||||
ZCLinkOptC HeadOpt() const{return ZCLinkOpt(mp_HeadLink);}
|
||||
ZCLinkOptC TailOpt() const{return ZCLinkOpt(mp_TailLink);}
|
||||
|
||||
ZCLinkOpt HeadOpt(TypeSize AI_Distance)
|
||||
{if(mp_HeadLink==0){return ZCLinkOpt(0);} return ZCLinkOpt((*mp_HeadLink)+AI_Distance);}
|
||||
ZCLinkOpt TailOpt(TypeSize AI_Distance)
|
||||
ZCLinkOpt TailOpt(TypeSize AI_Distance)
|
||||
{if(mp_TailLink==0){return ZCLinkOpt(0);} return ZCLinkOpt((*mp_TailLink)-AI_Distance);}
|
||||
|
||||
const ZCLinkOpt HeadOpt() const{return ZCLinkOpt(mp_HeadLink);}
|
||||
const ZCLinkOpt TailOpt() const{return ZCLinkOpt(mp_TailLink);}
|
||||
|
||||
const ZCLinkOpt HeadOpt(TypeSize AI_Distance) const
|
||||
ZCLinkOptC HeadOpt(TypeSize AI_Distance) const
|
||||
{if(mp_HeadLink==0){return ZCLinkOpt(0);} return ZCLinkOpt((*mp_HeadLink)+AI_Distance);}
|
||||
const ZCLinkOpt TailOpt(TypeSize AI_Distance) const
|
||||
ZCLinkOptC TailOpt(TypeSize AI_Distance) const
|
||||
{if(mp_TailLink==0){return ZCLinkOpt(0);} return ZCLinkOpt((*mp_TailLink)-AI_Distance);}
|
||||
|
||||
|
||||
ZCLink& _1(){return HeadRef();}
|
||||
ZCLink& _0(){return TailRef();}
|
||||
ZCLink & _1() {return HeadRef();}
|
||||
ZCLink & _0() {return TailRef();}
|
||||
|
||||
ZCLink& _1(TypeSize AI_Distance){return HeadRef(AI_Distance);}
|
||||
ZCLink& _0(TypeSize AI_Distance){return TailRef(AI_Distance);}
|
||||
ZCLinkC& _1() const{return HeadRef();}
|
||||
ZCLinkC& _0() const{return TailRef();}
|
||||
|
||||
const ZCLink& _1() const{return HeadRef();}
|
||||
const ZCLink& _0() const{return TailRef();}
|
||||
ZCLink & _1(TypeSize AI_Distance) {return HeadRef(AI_Distance);}
|
||||
ZCLink & _0(TypeSize AI_Distance) {return TailRef(AI_Distance);}
|
||||
|
||||
const ZCLink& _1(TypeSize AI_Distance) const{return HeadRef(AI_Distance);}
|
||||
const ZCLink& _0(TypeSize AI_Distance) const{return TailRef(AI_Distance);}
|
||||
ZCLinkC& _1(TypeSize AI_Distance) const{return HeadRef(AI_Distance);}
|
||||
ZCLinkC& _0(TypeSize AI_Distance) const{return TailRef(AI_Distance);}
|
||||
|
||||
|
||||
ZCDataOpt GetDataOpt(TypeSize AI_Index) // 1부터 시작.
|
||||
{
|
||||
return DataOpt(AI_Index-1);
|
||||
}/*
|
||||
ZCDataOpt GetDataOpt(TypeSize AI_Index)*/
|
||||
ZCDataOpt GetDataOpt(TypeSize AI_Index) // 1부터 시작.
|
||||
{ return DataOpt(AI_Index-1); }
|
||||
ZCDataOptC GetDataOpt(TypeSize AI_Index) const
|
||||
{ return DataOpt(AI_Index-1); }
|
||||
|
||||
const ZCDataOpt GetDataOpt(TypeSize AI_Index) const
|
||||
{
|
||||
return DataOpt(AI_Index-1);
|
||||
}/*
|
||||
const ZCDataOpt GetDataOpt(TypeSize AI_Index) const*/
|
||||
ZCDataOpt DataOpt(TypeSize AI_Index) // 1부터
|
||||
{ if(mp_HeadLink==0){return ZCDataOpt(0);}
|
||||
return ZCDataOpt(**HeadPtr(AI_Index-1));
|
||||
}
|
||||
ZCDataOptC DataOpt(TypeSize AI_Index) const
|
||||
{ if(mp_HeadLink==0){return ZCDataOpt(0);}
|
||||
return ZCDataOpt(**HeadPtr(AI_Index-1));
|
||||
}/*
|
||||
ZCDataOptC DataOpt(TypeSize AI_Index) const*/
|
||||
|
||||
ZCDataOpt DataOptHead(TypeSize AI_Distance=0)
|
||||
{ if(mp_HeadLink==0){return ZCDataOpt(0);}
|
||||
return ZCDataOpt(**HeadPtr(AI_Distance));
|
||||
}
|
||||
ZCDataOpt DataOptTail(TypeSize AI_Distance=0)
|
||||
{ if(mp_HeadLink==0){return ZCDataOpt(0);}
|
||||
return ZCDataOpt(**TailPtr(AI_Distance));
|
||||
}/*
|
||||
ZCDataOpt DataOptTail(TypeSize AI_Distance=0)*/
|
||||
|
||||
ZCDataOptC DataOptHead(TypeSize AI_Distance=0) const
|
||||
{ if(mp_HeadLink==0){return ZCDataOpt(0);}
|
||||
return ZCDataOpt(**HeadPtr(AI_Distance));
|
||||
}
|
||||
ZCDataOptC DataOptTail(TypeSize AI_Distance=0) const
|
||||
{ if(mp_HeadLink==0){return ZCDataOpt(0);}
|
||||
return ZCDataOpt(**TailPtr(AI_Distance));
|
||||
}/*
|
||||
ZCDataOptC DataOptTail(TypeSize AI_Distance=0) const*/
|
||||
|
||||
|
||||
ZCDataOpt DataOpt(TypeSize AI_Index) // 1부터
|
||||
{
|
||||
if(mp_HeadLink==0){return ZCDataOpt(0);}
|
||||
|
||||
return ZCDataOpt(**HeadPtr(AI_Index-1));
|
||||
}/*
|
||||
ZCDataOpt DataOpt(TypeSize AI_Index)*/
|
||||
|
||||
const ZCDataOpt DataOpt(TypeSize AI_Index) const
|
||||
{
|
||||
if(mp_HeadLink==0){return ZCDataOpt(0);}
|
||||
|
||||
return ZCDataOpt(**HeadPtr(AI_Index-1));
|
||||
}/*
|
||||
const ZCDataOpt DataOpt(TypeSize AI_Index) const*/
|
||||
|
||||
|
||||
ZCDataOpt DataOptHead(TypeSize AI_Distance=0)
|
||||
{
|
||||
if(mp_HeadLink==0){return ZCDataOpt(0);}
|
||||
|
||||
return ZCDataOpt(**HeadPtr(AI_Distance));
|
||||
}/*
|
||||
ZCDataOpt DataOptHead(TypeSize AI_Distance=0)*/
|
||||
|
||||
ZCDataOpt DataOptTail(TypeSize AI_Distance=0)
|
||||
{
|
||||
if(mp_HeadLink==0){return ZCDataOpt(0);}
|
||||
|
||||
return ZCDataOpt(**TailPtr(AI_Distance));
|
||||
}/*
|
||||
ZCDataOpt DataOptTail(TypeSize AI_Distance=0)*/
|
||||
|
||||
|
||||
const ZCDataOpt DataOptHead(TypeSize AI_Distance=0) const
|
||||
{
|
||||
if(mp_HeadLink==0){return ZCDataOpt(0);}
|
||||
|
||||
return ZCDataOpt(**HeadPtr(AI_Distance));
|
||||
}/*
|
||||
const ZCDataOpt DataOptHead(TypeSize AI_Distance=0) const*/
|
||||
|
||||
const ZCDataOpt DataOptTail(TypeSize AI_Distance=0) const
|
||||
{
|
||||
if(mp_HeadLink==0){return ZCDataOpt(0);}
|
||||
|
||||
return ZCDataOpt(**TailPtr(AI_Distance));
|
||||
}/*
|
||||
const ZCDataOpt DataOptTail(TypeSize AI_Distance=0) const*/
|
||||
|
||||
|
||||
/***/ ZCLinkOpt GetLinkOpt(TypeSize AI_Index)
|
||||
ZCLinkOpt GetLinkOpt(TypeSize AI_Index)
|
||||
{ if(mp_HeadLink==0) return ZCLinkOpt(0); return ZCLinkOpt(GetLinkPtr(AI_Index)); }
|
||||
const ZCLinkOpt GetLinkOpt(TypeSize AI_Index) const
|
||||
ZCLinkOptC GetLinkOpt(TypeSize AI_Index) const
|
||||
{ if(mp_HeadLink==0) return ZCLinkOpt(0); return ZCLinkOpt(GetLinkPtr(AI_Index)); }
|
||||
|
||||
|
||||
@ -8187,59 +8166,55 @@ namespace ZNsMain
|
||||
IterEasyIDc GetTailIterEasyIDc() const{return (IterEasyIDc)GetTailLinkPtr();}
|
||||
|
||||
void MoveNextIter(ZCLink* & APR_CLink ) const
|
||||
{ APR_CLink=APR_CLink->GetNextPtr();
|
||||
}
|
||||
{ APR_CLink=APR_CLink->GetNextPtr(); }
|
||||
void MoveNextIter(IterEasyID & ARRI_IterEasyID ) const
|
||||
{ MoveNextIter((ZCLink*&)(ARRI_IterEasyID));
|
||||
}
|
||||
{ MoveNextIter((ZCLink*&)(ARRI_IterEasyID)); }
|
||||
void MoveNextIter(TypeLinkC* & APR_CLink ) const
|
||||
{ APR_CLink=APR_CLink->GetNextPtr();
|
||||
}
|
||||
{ APR_CLink=APR_CLink->GetNextPtr(); }
|
||||
void MoveNextIter(IterEasyIDc& ARRI_IterEasyID ) const
|
||||
{ MoveNextIter((TypeLinkC*&)(ARRI_IterEasyID));
|
||||
}
|
||||
{ MoveNextIter((TypeLinkC*&)(ARRI_IterEasyID)); }
|
||||
void MoveNextIter(iterator & ARR_Iterator ) const{++ARR_Iterator;}
|
||||
void MoveNextIter(iteratorC & ARR_Iterator ) const{++ARR_Iterator;}
|
||||
|
||||
|
||||
void MovePrevIter(ZCLink* & APR_CLink ) const
|
||||
{ APR_CLink=APR_CLink->GetPrevPtr();
|
||||
}
|
||||
{ APR_CLink=APR_CLink->GetPrevPtr(); }
|
||||
void MovePrevIter(IterEasyID & ARRI_IterEasyID ) const
|
||||
{ MovePrevIter((ZCLink*&)(ARRI_IterEasyID));
|
||||
}
|
||||
{ MovePrevIter((ZCLink*&)(ARRI_IterEasyID)); }
|
||||
void MovePrevIter(TypeLinkC* & APR_CLink ) const
|
||||
{ APR_CLink=APR_CLink->GetPrevPtr();
|
||||
}
|
||||
{ APR_CLink=APR_CLink->GetPrevPtr(); }
|
||||
void MovePrevIter(IterEasyIDc& ARRI_IterEasyID ) const
|
||||
{ MovePrevIter((TypeLinkC*&)(ARRI_IterEasyID));
|
||||
}
|
||||
{ MovePrevIter((TypeLinkC*&)(ARRI_IterEasyID)); }
|
||||
void MovePrevIter(iterator & ARR_Iterator ) const{--ARR_Iterator;}
|
||||
void MovePrevIter(iteratorC & ARR_Iterator ) const{--ARR_Iterator;}
|
||||
|
||||
|
||||
TypeData & GetDataInIter(ZCLink* AP_CLink ){return **AP_CLink ;}
|
||||
TypeData & GetDataInIter(IterEasyID ARRI_IterEasyID )
|
||||
{ return GetDataInIter((ZCLink*)ARRI_IterEasyID ); }
|
||||
{ return GetDataInIter((ZCLink*)ARRI_IterEasyID ) ;}
|
||||
TypeData & GetDataInIter(iterator& ARR_Iterator ){return *ARR_Iterator;}
|
||||
|
||||
TypeDataC& GetDataInIter(TypeLinkC* AP_CLink ) const
|
||||
{ return **AP_CLink ;}
|
||||
{ return **AP_CLink ;}
|
||||
TypeDataC& GetDataInIter(IterEasyIDc ARRI_IterEasyID ) const
|
||||
{ return GetDataInIter((TypeLinkC*)ARRI_IterEasyID); }
|
||||
TypeDataC& GetDataInIter(iteratorC& ARR_Iterator )
|
||||
{ return *ARR_Iterator;}
|
||||
{ return *ARR_Iterator ;}
|
||||
|
||||
|
||||
TypeData & GetDataInIter( ZCLink* AP_CLink , TypeSize AI_FarNum)
|
||||
{return **(AP_CLink->GetNextPrevPtr(AI_FarNum)) ; }
|
||||
TypeData & GetDataInIter( IterEasyID ARRI_IterEasyID , TypeSize AI_FarNum)
|
||||
{ return GetDataInIter((ZCLink*)ARRI_IterEasyID, AI_FarNum); }
|
||||
TypeData & GetDataInIter( ZCLink* AP_CLink , TypeSize AI_FarNum)
|
||||
{return **(AP_CLink->GetNextPrevPtr(AI_FarNum)) ; }
|
||||
TypeData & GetDataInIter( IterEasyID ARRI_IterEasyID, TypeSize AI_FarNum)
|
||||
{ return GetDataInIter((ZCLink*)ARRI_IterEasyID , AI_FarNum); }
|
||||
TypeData & GetDataInIter( iterator& ARR_Iterator , TypeSize AI_FarNum)
|
||||
{ return GetDataInIter((ZCLink*)ARR_Iterator , AI_FarNum); }
|
||||
|
||||
TypeDataC& GetDataInIter( TypeLinkC* AP_CLink , TypeSize AI_FarNum) const
|
||||
{return **(AP_CLink->GetNextPrePtr(AI_FarNum)) ; }
|
||||
{return **(AP_CLink->GetNextPrePtr(AI_FarNum)) ; }
|
||||
TypeDataC& GetDataInIter( IterEasyIDc ARRI_IterEasyID, TypeSize AI_FarNum) const
|
||||
{ return GetDataInIter((ZCLink*)ARRI_IterEasyID, AI_FarNum); }
|
||||
{ return GetDataInIter((ZCLinkC*)ARRI_IterEasyID , AI_FarNum); }
|
||||
TypeDataC& GetDataInIter( iteratorC& ARR_Iterator , TypeSize AI_FarNum) const
|
||||
{ return GetDataInIter((ZCLinkC*)ARR_Iterator , AI_FarNum); }
|
||||
|
||||
|
||||
iterator begin() {return ZCLinkPoint(*this); }
|
||||
@ -8282,13 +8257,14 @@ namespace ZNsMain
|
||||
TypeDataC& ItD(IterEasyC AP_CLink ) const {return GetDataInIter(AP_CLink );}
|
||||
TypeDataC& ItD(IterEasyIDc ARRI_IterEasyID) const {return GetDataInIter(ARRI_IterEasyID);}
|
||||
TypeDataC& ItD(iteratorC& ARR_Iterator ) const {return GetDataInIter(ARR_Iterator );}
|
||||
|
||||
|
||||
/********************************************************************************************************************************/
|
||||
TypeData & ItD(IterEasy AP_CLink , TypeSize AI_FarNum) {return GetDataInIter(AP_CLink , AI_FarNum);}
|
||||
TypeData & ItD(IterEasyID ARRI_IterEasyID, TypeSize AI_FarNum) {return GetDataInIter(ARRI_IterEasyID, AI_FarNum);}
|
||||
TypeData & ItD(iterator ARR_Iterator , TypeSize AI_FarNum) {return GetDataInIter(ARR_Iterator , AI_FarNum);}
|
||||
|
||||
TypeDataC& ItD(IterEasyC AP_CLink , TypeSize AI_FarNum) const {return GetDataInIter(AP_CLink , AI_FarNum);}
|
||||
TypeDataC& ItD(IterEasyIDc ARRI_IterEasyID, TypeSize AI_FarNum) const {return GetDataInIter(ARRI_IterEasyID, AI_FarNum);}
|
||||
TypeDataC& ItD(iteratorC ARR_Iterator , TypeSize AI_FarNum) const {return GetDataInIter(ARR_Iterator , AI_FarNum);}
|
||||
|
||||
public :
|
||||
};/*
|
||||
|
@ -811,14 +811,16 @@ namespace ZNsMain
|
||||
typedef ZCLink TypeLink ;
|
||||
typedef TypeThis TypeList ;
|
||||
public:
|
||||
typedef ZCLink* IterEasy ; // 가장 대표적으로 쓰일 수 있는 반복자.
|
||||
typedef ZCLinkPoint iterator ; // 다양한 기능을 가진 반복자.
|
||||
typedef ZCLink* IterEasy ; // 가장 간단하게 쓰일 수 있는 반복자.
|
||||
typedef ZCLinkPoint iterator ; // 다양한 기능을 가진 반복자.
|
||||
public:
|
||||
typedef ZtCObjOpt<ZCLink > ZCLinkOpt;
|
||||
typedef ZtCObjOpt<TypeData> ZCDataOpt;
|
||||
public:
|
||||
typedef const TypeList TypeListC ;
|
||||
typedef const TypeData TypeDataC ;
|
||||
typedef const TypeLink TypeLinkC ;
|
||||
typedef const TypeThis TypeThisC ;
|
||||
typedef const IterEasy IterEasyC ;
|
||||
typedef const iterator iteratorC ;
|
||||
typedef const ZCLink ZCLinkC ;
|
||||
@ -1061,8 +1063,8 @@ namespace ZNsMain
|
||||
TypeSize GetPos () const{ return ml_CurrPos; }
|
||||
/***************************************************/
|
||||
|
||||
const TypeList& GetList() const{return mr_CurrList;}
|
||||
const TypeLink& GetLink() const{return *mp_CurrLink;}
|
||||
TypeListC& GetList() const{return mr_CurrList;}
|
||||
TypeLinkC& GetLink() const{return *mp_CurrLink;}
|
||||
|
||||
|
||||
bool IsValid() const{return mr_CurrList.size()>0;}
|
||||
@ -1071,9 +1073,17 @@ namespace ZNsMain
|
||||
|
||||
ZCLinkPoint& operator= (const ZCLinkPoint& rhs){ return *this; }
|
||||
|
||||
|
||||
TypeData & operator*() {return **mp_CurrLink;}
|
||||
TypeDataC& operator*() const{return **mp_CurrLink;}
|
||||
|
||||
operator TypeLink * () {return mp_CurrLink;}
|
||||
operator TypeLinkC* () const{return mp_CurrLink;}
|
||||
|
||||
operator TypeLink & () {return *mp_CurrLink;}
|
||||
operator TypeLinkC& () const{return *mp_CurrLink;}
|
||||
|
||||
|
||||
const ZCLinkPoint& operator++() const
|
||||
{
|
||||
if(IsEmpty()){*this;}
|
||||
@ -2826,11 +2836,15 @@ namespace ZNsMain
|
||||
{return **(AP_CLink->GetNextPrevPtr(AI_FarNum)) ; }
|
||||
TypeData & GetDataInIter(IterEasyID ARRI_IterEasyID, TypeSize AI_FarNum)
|
||||
{ return GetDataInIter((ZCLink*)ARRI_IterEasyID , AI_FarNum); }
|
||||
TypeData & GetDataInIter(iterator& ARR_Iterator , TypeSize AI_FarNum)
|
||||
{ return GetDataInIter((ZCLink*)ARR_Iterator , AI_FarNum); }
|
||||
|
||||
TypeDataC& GetDataInIter(TypeLinkC* AP_CLink , TypeSize AI_FarNum) const
|
||||
{return **(AP_CLink->GetNextPrePtr(AI_FarNum)) ; }
|
||||
TypeDataC& GetDataInIter(IterEasyIDc ARRI_IterEasyID, TypeSize AI_FarNum) const
|
||||
{ return GetDataInIter((ZCLink*)ARRI_IterEasyID , AI_FarNum); }
|
||||
{ return GetDataInIter((ZCLinkC*)ARRI_IterEasyID, AI_FarNum); }
|
||||
TypeDataC& GetDataInIter(iteratorC& ARR_Iterator , TypeSize AI_FarNum) const
|
||||
{ return GetDataInIter((ZCLinkC*)ARR_Iterator , AI_FarNum); }
|
||||
|
||||
|
||||
iterator begin() { return ZCLinkPoint(*this); }
|
||||
@ -2868,11 +2882,11 @@ namespace ZNsMain
|
||||
|
||||
TypeData & ItD(IterEasy AP_CLink ) {return GetDataInIter(AP_CLink );}
|
||||
TypeData & ItD(IterEasyID ARRI_IterEasyID) {return GetDataInIter(ARRI_IterEasyID);}
|
||||
TypeData & ItD(iterator ARR_Iterator ) {return GetDataInIter(ARR_Iterator );}
|
||||
TypeData & ItD(iterator& ARR_Iterator ) {return GetDataInIter(ARR_Iterator );}
|
||||
|
||||
TypeDataC& ItD(IterEasyC AP_CLink ) const{return GetDataInIter(AP_CLink );}
|
||||
TypeDataC& ItD(IterEasyIDc ARRI_IterEasyID) const{return GetDataInIter(ARRI_IterEasyID);}
|
||||
TypeDataC& ItD(iteratorC ARR_Iterator ) const{return GetDataInIter(ARR_Iterator );}
|
||||
TypeDataC& ItD(iteratorC& ARR_Iterator ) const{return GetDataInIter(ARR_Iterator );}
|
||||
|
||||
|
||||
TypeData & ItD(IterEasy AP_CLink , TypeSize AI_FarNum){return GetDataInIter(AP_CLink , AI_FarNum);}
|
||||
|
Reference in New Issue
Block a user