commit 2025-10-13 19:00 ZCLinkPoint => ZCNodePoint : ZCppMain/ZtCObjList.H
This commit is contained in:
@ -5696,7 +5696,7 @@ namespace ZNsMain
|
|||||||
class ZtCBaseList /*#####################################################*/
|
class ZtCBaseList /*#####################################################*/
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
class ZCLink; class ZCLinkPoint; class ZCLinkPointC;
|
class ZCLink; class ZCNodePoint; class ZCNodePointC;
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
typedef ZtCObjOpt<ZCLink> ZCLinkOpt ;
|
typedef ZtCObjOpt<ZCLink> ZCLinkOpt ;
|
||||||
typedef ZtCObjOpt<TType > ZCDataOpt ;
|
typedef ZtCObjOpt<TType > ZCDataOpt ;
|
||||||
@ -5709,20 +5709,20 @@ namespace ZNsMain
|
|||||||
typedef TTypSize TypeSize ;
|
typedef TTypSize TypeSize ;
|
||||||
typedef TMoveObj TypeMoveObj ;
|
typedef TMoveObj TypeMoveObj ;
|
||||||
typedef ZCLink TypeLink ;
|
typedef ZCLink TypeLink ;
|
||||||
typedef ZCLink TypeNode ; // ZCLinkPoint::GetNode() 의 반환형.
|
typedef ZCLink TypeNode ; // ZCNodePoint::GetNode() 의 반환형.
|
||||||
typedef ZCLinkPoint TypeLinkPoint ;
|
typedef ZCNodePoint TypeNodePoint ;
|
||||||
typedef ZCLinkPoint TypeIter ;
|
typedef ZCNodePoint TypeIter ;
|
||||||
|
|
||||||
typedef ZCLink* IterEasy ; // 가장 쉽게 쓸 수 있는 반복자.
|
typedef ZCLink* IterEasy ; // 가장 쉽게 쓸 수 있는 반복자.
|
||||||
typedef ZCLinkPointC iteratorC ;
|
typedef ZCNodePointC iteratorC ;
|
||||||
|
|
||||||
typedef ZCLinkPoint iterator ; // 다양한 기능을 가진 반복자.
|
typedef ZCNodePoint iterator ; // 다양한 기능을 가진 반복자.
|
||||||
typedef ZCLinkPointC const_iterator;
|
typedef ZCNodePointC const_iterator;
|
||||||
|
|
||||||
typedef const TypeThis TypeThisC ;
|
typedef const TypeThis TypeThisC ;
|
||||||
typedef const TypeList TypeListC ;
|
typedef const TypeList TypeListC ;
|
||||||
typedef const TypeData TypeDataC ;
|
typedef const TypeData TypeDataC ;
|
||||||
typedef const TypeNode TypeNodeC ; // ZCLinkPoint::GetNode() const 의 반환형.
|
typedef const TypeNode TypeNodeC ; // ZCNodePoint::GetNode() const 의 반환형.
|
||||||
typedef const ZCLink TypeLinkC ;
|
typedef const ZCLink TypeLinkC ;
|
||||||
|
|
||||||
typedef const ZCLink ZCLinkC ;
|
typedef const ZCLink ZCLinkC ;
|
||||||
@ -5730,7 +5730,7 @@ namespace ZNsMain
|
|||||||
typedef const ZCLinkOpt ZCLinkOptC ;
|
typedef const ZCLinkOpt ZCLinkOptC ;
|
||||||
typedef const ZCDataOpt ZCDataOptC ;
|
typedef const ZCDataOpt ZCDataOptC ;
|
||||||
|
|
||||||
typedef ZCLinkPointC TypeIterC ;
|
typedef ZCNodePointC TypeIterC ;
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
|
||||||
@ -5861,46 +5861,46 @@ namespace ZNsMain
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
class ZCLinkPoint
|
class ZCNodePoint
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
mutable TypeLink* mp_CurrLink; // 사실상 mp_CurrLink!=0
|
mutable TypeLink* mp_CurrLink; // 사실상 mp_CurrLink!=0
|
||||||
mutable TypeSize ml_CurrPos ;
|
mutable TypeSize ml_CurrPos ;
|
||||||
/*****/ TypeList& mr_CurrList;
|
/*****/ TypeList& mr_CurrList;
|
||||||
public:
|
public:
|
||||||
ZCLinkPoint(TypeList& AR_TypeList) :
|
ZCNodePoint(TypeList& AR_TypeList) :
|
||||||
mr_CurrList(AR_TypeList)
|
mr_CurrList(AR_TypeList)
|
||||||
{
|
{
|
||||||
mp_CurrLink = AR_TypeList.HeadPtr();
|
mp_CurrLink = AR_TypeList.HeadPtr();
|
||||||
ml_CurrPos = 1 ;
|
ml_CurrPos = 1 ;
|
||||||
}
|
}
|
||||||
ZCLinkPoint(const ZCLinkPoint& rhs) :
|
ZCNodePoint(const ZCNodePoint& rhs) :
|
||||||
mr_CurrList(rhs.mr_CurrList),
|
mr_CurrList(rhs.mr_CurrList),
|
||||||
mp_CurrLink(rhs.mp_CurrLink),
|
mp_CurrLink(rhs.mp_CurrLink),
|
||||||
ml_CurrPos (rhs.ml_CurrPos )
|
ml_CurrPos (rhs.ml_CurrPos )
|
||||||
{}
|
{}
|
||||||
public :
|
public :
|
||||||
|
|
||||||
static ZCLinkPoint MakeTailPoint(TypeList& AR_TypeList)
|
static ZCNodePoint MakeTailPoint(TypeList& AR_TypeList)
|
||||||
{
|
{
|
||||||
ZCLinkPoint VO_ZCLinkPoint(AR_TypeList);
|
ZCNodePoint VO_ZCLinkPoint(AR_TypeList);
|
||||||
|
|
||||||
VO_ZCLinkPoint.mp_CurrLink = AR_TypeList.mp_TailLink;
|
VO_ZCLinkPoint.mp_CurrLink = AR_TypeList.mp_TailLink;
|
||||||
VO_ZCLinkPoint.ml_CurrPos = AR_TypeList.ml_LinkSize;
|
VO_ZCLinkPoint.ml_CurrPos = AR_TypeList.ml_LinkSize;
|
||||||
|
|
||||||
return VO_ZCLinkPoint; /****************************/
|
return VO_ZCLinkPoint; /****************************/
|
||||||
}/*
|
}/*
|
||||||
static ZCLinkPoint MakeTailPoint(TypeList& AR_TypeList)*/
|
static ZCNodePoint MakeTailPoint(TypeList& AR_TypeList)*/
|
||||||
static ZCLinkPoint MakeTailPoint(const TypeIter& AR_TypeIter)
|
static ZCNodePoint MakeTailPoint(const TypeIter& AR_TypeIter)
|
||||||
{
|
{
|
||||||
ZCLinkPoint VO_ZCLinkPoint(AR_TypeIter);
|
ZCNodePoint VO_ZCLinkPoint(AR_TypeIter);
|
||||||
|
|
||||||
VO_ZCLinkPoint.mp_CurrLink = VO_ZCLinkPoint.mr_TypeList.mp_TailLink;
|
VO_ZCLinkPoint.mp_CurrLink = VO_ZCLinkPoint.mr_TypeList.mp_TailLink;
|
||||||
VO_ZCLinkPoint.ml_CurrPos = VO_ZCLinkPoint.mr_TypeList.ml_LinkSize;
|
VO_ZCLinkPoint.ml_CurrPos = VO_ZCLinkPoint.mr_TypeList.ml_LinkSize;
|
||||||
|
|
||||||
return VO_ZCLinkPoint; /****************************/
|
return VO_ZCLinkPoint; /****************************/
|
||||||
}/*
|
}/*
|
||||||
static ZCLinkPoint MakeTailPoint(const TypeIter& AR_TypeIter)*/
|
static ZCNodePoint MakeTailPoint(const TypeIter& AR_TypeIter)*/
|
||||||
|
|
||||||
public :
|
public :
|
||||||
|
|
||||||
@ -5918,7 +5918,7 @@ namespace ZNsMain
|
|||||||
bool IsEmpty() const{return mr_CurrList.size()<1;}
|
bool IsEmpty() const{return mr_CurrList.size()<1;}
|
||||||
|
|
||||||
|
|
||||||
ZCLinkPoint& operator= (const ZCLinkPoint& rhs){ return *this; }
|
ZCNodePoint& operator= (const ZCNodePoint& rhs){ return *this; }
|
||||||
|
|
||||||
|
|
||||||
TypeData & operator*() {return **mp_CurrLink;}
|
TypeData & operator*() {return **mp_CurrLink;}
|
||||||
@ -5931,17 +5931,17 @@ namespace ZNsMain
|
|||||||
operator TypeLinkC& () const{return *mp_CurrLink;}
|
operator TypeLinkC& () const{return *mp_CurrLink;}
|
||||||
|
|
||||||
|
|
||||||
bool operator == (const ZCLinkPoint& rhs) const
|
bool operator == (const ZCNodePoint& rhs) const
|
||||||
{ return ml_CurrPos == rhs.ml_CurrPos; }
|
{ return ml_CurrPos == rhs.ml_CurrPos; }
|
||||||
bool operator != (const ZCLinkPoint& rhs) const
|
bool operator != (const ZCNodePoint& rhs) const
|
||||||
{ return ml_CurrPos != rhs.ml_CurrPos; }
|
{ return ml_CurrPos != rhs.ml_CurrPos; }
|
||||||
bool operator > (const ZCLinkPoint& rhs) const
|
bool operator > (const ZCNodePoint& rhs) const
|
||||||
{ return ml_CurrPos > rhs.ml_CurrPos; }
|
{ return ml_CurrPos > rhs.ml_CurrPos; }
|
||||||
bool operator >= (const ZCLinkPoint& rhs) const
|
bool operator >= (const ZCNodePoint& rhs) const
|
||||||
{ return ml_CurrPos >= rhs.ml_CurrPos; }
|
{ return ml_CurrPos >= rhs.ml_CurrPos; }
|
||||||
bool operator < (const ZCLinkPoint& rhs) const
|
bool operator < (const ZCNodePoint& rhs) const
|
||||||
{ return ml_CurrPos < rhs.ml_CurrPos; }
|
{ return ml_CurrPos < rhs.ml_CurrPos; }
|
||||||
bool operator <= (const ZCLinkPoint& rhs) const
|
bool operator <= (const ZCNodePoint& rhs) const
|
||||||
{ return ml_CurrPos <= rhs.ml_CurrPos; }
|
{ return ml_CurrPos <= rhs.ml_CurrPos; }
|
||||||
|
|
||||||
bool operator == (TypeSize AL_Size) const
|
bool operator == (TypeSize AL_Size) const
|
||||||
@ -5958,44 +5958,44 @@ namespace ZNsMain
|
|||||||
{ return ml_CurrPos <= AL_Size; }
|
{ return ml_CurrPos <= AL_Size; }
|
||||||
|
|
||||||
|
|
||||||
const ZCLinkPoint& operator++() const
|
const ZCNodePoint& operator++() const
|
||||||
{
|
{
|
||||||
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
||||||
|
|
||||||
++ml_CurrPos; return *this ;
|
++ml_CurrPos; return *this ;
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPoint& operator++() const*/
|
const ZCNodePoint& operator++() const*/
|
||||||
|
|
||||||
const ZCLinkPoint& operator--() const
|
const ZCNodePoint& operator--() const
|
||||||
{
|
{
|
||||||
mp_CurrLink = mp_CurrLink->mp_PrevLink;
|
mp_CurrLink = mp_CurrLink->mp_PrevLink;
|
||||||
|
|
||||||
--ml_CurrPos; return *this ;
|
--ml_CurrPos; return *this ;
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPoint& operator--() const*/
|
const ZCNodePoint& operator--() const*/
|
||||||
|
|
||||||
ZCLinkPoint operator++(int) const
|
ZCNodePoint operator++(int) const
|
||||||
{
|
{
|
||||||
ZCLinkPoint VO_NowPoint(*this);
|
ZCNodePoint VO_NowPoint(*this);
|
||||||
|
|
||||||
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
||||||
|
|
||||||
++ml_CurrPos ; return VO_NowPoint ;
|
++ml_CurrPos ; return VO_NowPoint ;
|
||||||
}/*
|
}/*
|
||||||
ZCLinkPoint operator++(int) const*/
|
ZCNodePoint operator++(int) const*/
|
||||||
|
|
||||||
ZCLinkPoint operator--(int) const
|
ZCNodePoint operator--(int) const
|
||||||
{
|
{
|
||||||
ZCLinkPoint VO_NowPoint(*this);
|
ZCNodePoint VO_NowPoint(*this);
|
||||||
|
|
||||||
mp_CurrLink = mp_CurrLink->mp_PrevLink;
|
mp_CurrLink = mp_CurrLink->mp_PrevLink;
|
||||||
|
|
||||||
--ml_CurrPos; return VO_NowPoint ;
|
--ml_CurrPos; return VO_NowPoint ;
|
||||||
}/*
|
}/*
|
||||||
ZCLinkPoint operator--(int) const*/
|
ZCNodePoint operator--(int) const*/
|
||||||
|
|
||||||
|
|
||||||
const ZCLinkPoint& operator+=(TypeSize AL_Distance) const
|
const ZCNodePoint& operator+=(TypeSize AL_Distance) const
|
||||||
{
|
{
|
||||||
if(IsEmpty()){return *this;}
|
if(IsEmpty()){return *this;}
|
||||||
|
|
||||||
@ -6004,77 +6004,77 @@ namespace ZNsMain
|
|||||||
|
|
||||||
return *this; /*:::::::::::::::::::::::::::*/
|
return *this; /*:::::::::::::::::::::::::::*/
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPoint& operator+=(TypeSize AL_Distance) const*/
|
const ZCNodePoint& operator+=(TypeSize AL_Distance) const*/
|
||||||
|
|
||||||
const ZCLinkPoint& operator-=(TypeSize AL_Distance) const
|
const ZCNodePoint& operator-=(TypeSize AL_Distance) const
|
||||||
{
|
{
|
||||||
mp_CurrLink = &((*mp_CurrLink)-AL_Distance);
|
mp_CurrLink = &((*mp_CurrLink)-AL_Distance);
|
||||||
ml_CurrPos -= AL_Distance ;
|
ml_CurrPos -= AL_Distance ;
|
||||||
|
|
||||||
return *this; /*::::::::::::::::::::::::::*/
|
return *this; /*::::::::::::::::::::::::::*/
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPoint& operator-=(TypeSize AL_Distance) const*/
|
const ZCNodePoint& operator-=(TypeSize AL_Distance) const*/
|
||||||
|
|
||||||
public:
|
public:
|
||||||
};/*
|
};/*
|
||||||
class ZCLinkPoint*/
|
class ZCNodePoint*/
|
||||||
|
|
||||||
|
|
||||||
class ZCLinkPointC
|
class ZCNodePointC
|
||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
const TypeList& mr_CurrList;
|
const TypeList& mr_CurrList;
|
||||||
mutable TypeLinkC* mp_CurrLink; // 사실상 mp_CurrLink!=0
|
mutable TypeLinkC* mp_CurrLink; // 사실상 mp_CurrLink!=0
|
||||||
mutable TypeSize ml_CurrPos ;
|
mutable TypeSize ml_CurrPos ;
|
||||||
public :
|
public :
|
||||||
ZCLinkPointC(const TypeList& AR_TypeList) :
|
ZCNodePointC(const TypeList& AR_TypeList) :
|
||||||
mr_CurrList(AR_TypeList)
|
mr_CurrList(AR_TypeList)
|
||||||
{
|
{
|
||||||
mp_CurrLink = AR_TypeList.HeadPtr();
|
mp_CurrLink = AR_TypeList.HeadPtr();
|
||||||
ml_CurrPos = 1 ;
|
ml_CurrPos = 1 ;
|
||||||
}
|
}
|
||||||
ZCLinkPointC(const ZCLinkPoint & rhs) :
|
ZCNodePointC(const ZCNodePoint & rhs) :
|
||||||
mr_CurrList( rhs.GetMain()),
|
mr_CurrList( rhs.GetMain()),
|
||||||
mp_CurrLink(&rhs.GetNode()),
|
mp_CurrLink(&rhs.GetNode()),
|
||||||
ml_CurrPos ( rhs.GetPos ())
|
ml_CurrPos ( rhs.GetPos ())
|
||||||
{}
|
{}
|
||||||
ZCLinkPointC(const ZCLinkPointC& rhs) :
|
ZCNodePointC(const ZCNodePointC& rhs) :
|
||||||
mr_CurrList(rhs.mr_CurrList),
|
mr_CurrList(rhs.mr_CurrList),
|
||||||
mp_CurrLink(rhs.mp_CurrLink),
|
mp_CurrLink(rhs.mp_CurrLink),
|
||||||
ml_CurrPos (rhs.ml_CurrPos )
|
ml_CurrPos (rhs.ml_CurrPos )
|
||||||
{}
|
{}
|
||||||
public :
|
public :
|
||||||
|
|
||||||
static ZCLinkPointC MakeTailPoint(const TypeList& AR_TypeList)
|
static ZCNodePointC MakeTailPoint(const TypeList& AR_TypeList)
|
||||||
{
|
{
|
||||||
ZCLinkPointC VO_ZCLinkPoint(AR_TypeList);
|
ZCNodePointC VO_ZCLinkPoint(AR_TypeList);
|
||||||
|
|
||||||
VO_ZCLinkPoint.mp_CurrLink = AR_TypeList.mp_TailLink;
|
VO_ZCLinkPoint.mp_CurrLink = AR_TypeList.mp_TailLink;
|
||||||
VO_ZCLinkPoint.ml_CurrPos = AR_TypeList.ml_LinkSize;
|
VO_ZCLinkPoint.ml_CurrPos = AR_TypeList.ml_LinkSize;
|
||||||
|
|
||||||
return VO_ZCLinkPoint; /****************/
|
return VO_ZCLinkPoint; /****************/
|
||||||
}/*
|
}/*
|
||||||
static ZCLinkPointC MakeTailPoint(const TypeList& AR_TypeList)*/
|
static ZCNodePointC MakeTailPoint(const TypeList& AR_TypeList)*/
|
||||||
static ZCLinkPointC MakeTailPoint(const ZCLinkPoint& AR_TypeIter)
|
static ZCNodePointC MakeTailPoint(const ZCNodePoint& AR_TypeIter)
|
||||||
{
|
{
|
||||||
ZCLinkPointC VO_ZCLinkPoint(AR_TypeIter);
|
ZCNodePointC VO_ZCLinkPoint(AR_TypeIter);
|
||||||
|
|
||||||
VO_ZCLinkPoint.mp_CurrLink = VO_ZCLinkPoint.mr_TypeList.mp_TailLink;
|
VO_ZCLinkPoint.mp_CurrLink = VO_ZCLinkPoint.mr_TypeList.mp_TailLink;
|
||||||
VO_ZCLinkPoint.ml_CurrPos = VO_ZCLinkPoint.mr_TypeList.ml_LinkSize;
|
VO_ZCLinkPoint.ml_CurrPos = VO_ZCLinkPoint.mr_TypeList.ml_LinkSize;
|
||||||
|
|
||||||
return VO_ZCLinkPoint; /****************/
|
return VO_ZCLinkPoint; /****************/
|
||||||
}/*
|
}/*
|
||||||
static ZCLinkPointC MakeTailPoint(const ZCLinkPoint& AR_TypeIter)*/
|
static ZCNodePointC MakeTailPoint(const ZCNodePoint& AR_TypeIter)*/
|
||||||
static ZCLinkPointC MakeTailPoint(const ZCLinkPointC& AR_TypeIter)
|
static ZCNodePointC MakeTailPoint(const ZCNodePointC& AR_TypeIter)
|
||||||
{
|
{
|
||||||
ZCLinkPointC VO_ZCLinkPoint(AR_TypeIter);
|
ZCNodePointC VO_ZCLinkPoint(AR_TypeIter);
|
||||||
|
|
||||||
VO_ZCLinkPoint.mp_CurrLink = VO_ZCLinkPoint.mr_TypeList.mp_TailLink;
|
VO_ZCLinkPoint.mp_CurrLink = VO_ZCLinkPoint.mr_TypeList.mp_TailLink;
|
||||||
VO_ZCLinkPoint.ml_CurrPos = VO_ZCLinkPoint.mr_TypeList.ml_LinkSize;
|
VO_ZCLinkPoint.ml_CurrPos = VO_ZCLinkPoint.mr_TypeList.ml_LinkSize;
|
||||||
|
|
||||||
return VO_ZCLinkPoint; /****************/
|
return VO_ZCLinkPoint; /****************/
|
||||||
}/*
|
}/*
|
||||||
static ZCLinkPointC MakeTailPoint(const ZCLinkPointC& AR_TypeIter)*/
|
static ZCNodePointC MakeTailPoint(const ZCNodePointC& AR_TypeIter)*/
|
||||||
|
|
||||||
public :
|
public :
|
||||||
|
|
||||||
@ -6089,7 +6089,7 @@ namespace ZNsMain
|
|||||||
bool IsEmpty() const{return mr_CurrList.size()<1;}
|
bool IsEmpty() const{return mr_CurrList.size()<1;}
|
||||||
|
|
||||||
|
|
||||||
ZCLinkPointC& operator= (const ZCLinkPointC& rhs){ return *this; }
|
ZCNodePointC& operator= (const ZCNodePointC& rhs){ return *this; }
|
||||||
|
|
||||||
|
|
||||||
TypeDataC& operator*() const{return **mp_CurrLink;}
|
TypeDataC& operator*() const{return **mp_CurrLink;}
|
||||||
@ -6097,17 +6097,17 @@ namespace ZNsMain
|
|||||||
operator TypeLinkC& () const{return *mp_CurrLink;}
|
operator TypeLinkC& () const{return *mp_CurrLink;}
|
||||||
|
|
||||||
|
|
||||||
bool operator == (const ZCLinkPointC& rhs) const
|
bool operator == (const ZCNodePointC& rhs) const
|
||||||
{ return ml_CurrPos == rhs.ml_CurrPos; }
|
{ return ml_CurrPos == rhs.ml_CurrPos; }
|
||||||
bool operator != (const ZCLinkPointC& rhs) const
|
bool operator != (const ZCNodePointC& rhs) const
|
||||||
{ return ml_CurrPos != rhs.ml_CurrPos; }
|
{ return ml_CurrPos != rhs.ml_CurrPos; }
|
||||||
bool operator > (const ZCLinkPointC& rhs) const
|
bool operator > (const ZCNodePointC& rhs) const
|
||||||
{ return ml_CurrPos > rhs.ml_CurrPos; }
|
{ return ml_CurrPos > rhs.ml_CurrPos; }
|
||||||
bool operator >= (const ZCLinkPointC& rhs) const
|
bool operator >= (const ZCNodePointC& rhs) const
|
||||||
{ return ml_CurrPos >= rhs.ml_CurrPos; }
|
{ return ml_CurrPos >= rhs.ml_CurrPos; }
|
||||||
bool operator < (const ZCLinkPointC& rhs) const
|
bool operator < (const ZCNodePointC& rhs) const
|
||||||
{ return ml_CurrPos < rhs.ml_CurrPos; }
|
{ return ml_CurrPos < rhs.ml_CurrPos; }
|
||||||
bool operator <= (const ZCLinkPointC& rhs) const
|
bool operator <= (const ZCNodePointC& rhs) const
|
||||||
{ return ml_CurrPos <= rhs.ml_CurrPos; }
|
{ return ml_CurrPos <= rhs.ml_CurrPos; }
|
||||||
|
|
||||||
bool operator == (TypeSize AL_Size) const
|
bool operator == (TypeSize AL_Size) const
|
||||||
@ -6124,44 +6124,44 @@ namespace ZNsMain
|
|||||||
{ return ml_CurrPos <= AL_Size; }
|
{ return ml_CurrPos <= AL_Size; }
|
||||||
|
|
||||||
|
|
||||||
const ZCLinkPointC& operator++() const
|
const ZCNodePointC& operator++() const
|
||||||
{
|
{
|
||||||
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
||||||
|
|
||||||
++ml_CurrPos; return *this ;
|
++ml_CurrPos; return *this ;
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPointC& operator++() const*/
|
const ZCNodePointC& operator++() const*/
|
||||||
|
|
||||||
const ZCLinkPointC& operator--() const
|
const ZCNodePointC& operator--() const
|
||||||
{
|
{
|
||||||
mp_CurrLink = mp_CurrLink->mp_PrevLink;
|
mp_CurrLink = mp_CurrLink->mp_PrevLink;
|
||||||
|
|
||||||
--ml_CurrPos; return *this ;
|
--ml_CurrPos; return *this ;
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPointC& operator--() const*/
|
const ZCNodePointC& operator--() const*/
|
||||||
|
|
||||||
ZCLinkPointC operator++(int) const
|
ZCNodePointC operator++(int) const
|
||||||
{
|
{
|
||||||
ZCLinkPointC VO_NowPoint(*this);
|
ZCNodePointC VO_NowPoint(*this);
|
||||||
|
|
||||||
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
||||||
|
|
||||||
++ml_CurrPos ; return VO_NowPoint ;
|
++ml_CurrPos ; return VO_NowPoint ;
|
||||||
}/*
|
}/*
|
||||||
ZCLinkPointC operator++(int) const*/
|
ZCNodePointC operator++(int) const*/
|
||||||
|
|
||||||
ZCLinkPointC operator--(int) const
|
ZCNodePointC operator--(int) const
|
||||||
{
|
{
|
||||||
ZCLinkPointC VO_NowPoint(*this);
|
ZCNodePointC VO_NowPoint(*this);
|
||||||
|
|
||||||
mp_CurrLink = mp_CurrLink->mp_PrevLink;
|
mp_CurrLink = mp_CurrLink->mp_PrevLink;
|
||||||
|
|
||||||
--ml_CurrPos; return VO_NowPoint ;
|
--ml_CurrPos; return VO_NowPoint ;
|
||||||
}/*
|
}/*
|
||||||
ZCLinkPointC operator--(int) const*/
|
ZCNodePointC operator--(int) const*/
|
||||||
|
|
||||||
|
|
||||||
const ZCLinkPointC& operator+=(TypeSize AL_Distance) const
|
const ZCNodePointC& operator+=(TypeSize AL_Distance) const
|
||||||
{
|
{
|
||||||
if(IsEmpty()){return *this;}
|
if(IsEmpty()){return *this;}
|
||||||
|
|
||||||
@ -6170,28 +6170,28 @@ namespace ZNsMain
|
|||||||
|
|
||||||
return *this; /*:::::::::::::::::::::::::::*/
|
return *this; /*:::::::::::::::::::::::::::*/
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPointC& operator+=(TypeSize AL_Distance) const*/
|
const ZCNodePointC& operator+=(TypeSize AL_Distance) const*/
|
||||||
|
|
||||||
const ZCLinkPointC& operator-=(TypeSize AL_Distance) const
|
const ZCNodePointC& operator-=(TypeSize AL_Distance) const
|
||||||
{
|
{
|
||||||
mp_CurrLink = &((*mp_CurrLink)-AL_Distance);
|
mp_CurrLink = &((*mp_CurrLink)-AL_Distance);
|
||||||
ml_CurrPos -= AL_Distance ;
|
ml_CurrPos -= AL_Distance ;
|
||||||
|
|
||||||
return *this; /*::::::::::::::::::::::::::*/
|
return *this; /*::::::::::::::::::::::::::*/
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPointC& operator-=(TypeSize AL_Distance) const*/
|
const ZCNodePointC& operator-=(TypeSize AL_Distance) const*/
|
||||||
|
|
||||||
public:
|
public:
|
||||||
};/*
|
};/*
|
||||||
class ZCLinkPointC*/
|
class ZCNodePointC*/
|
||||||
|
|
||||||
|
|
||||||
class ZCLinkPointEx : public ZCLinkPoint
|
class ZCLinkPointEx : public ZCNodePoint
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
ZCLinkPointEx(TypeList& AR_TypeList): ZCLinkPoint(AR_TypeList){}
|
ZCLinkPointEx(TypeList& AR_TypeList): ZCNodePoint(AR_TypeList){}
|
||||||
ZCLinkPointEx(const ZCLinkPoint & rhs): ZCLinkPoint(rhs ){}
|
ZCLinkPointEx(const ZCNodePoint & rhs): ZCNodePoint(rhs ){}
|
||||||
ZCLinkPointEx(const ZCLinkPointEx& rhs): ZCLinkPoint(rhs ){}
|
ZCLinkPointEx(const ZCLinkPointEx& rhs): ZCNodePoint(rhs ){}
|
||||||
public:
|
public:
|
||||||
|
|
||||||
static ZCLinkPointEx MakeTailPoint(const ZCLinkPointEx& AR_TypeIter)
|
static ZCLinkPointEx MakeTailPoint(const ZCLinkPointEx& AR_TypeIter)
|
||||||
@ -8554,10 +8554,10 @@ namespace ZNsMain
|
|||||||
{ return GetDataInIter((ZCLinkC*)ARR_Iterator , AI_FarNum); }
|
{ return GetDataInIter((ZCLinkC*)ARR_Iterator , AI_FarNum); }
|
||||||
|
|
||||||
|
|
||||||
iterator begin () { return ZCLinkPoint (*this); }
|
iterator begin () { return ZCNodePoint (*this); }
|
||||||
iteratorC begin () const{ return ZCLinkPointC(*this); }
|
iteratorC begin () const{ return ZCNodePointC(*this); }
|
||||||
iterator end () { return ZCLinkPoint ::MakeTailPoint(*this); }
|
iterator end () { return ZCNodePoint ::MakeTailPoint(*this); }
|
||||||
iteratorC end () const{ return ZCLinkPointC::MakeTailPoint(*this); }
|
iteratorC end () const{ return ZCNodePointC::MakeTailPoint(*this); }
|
||||||
|
|
||||||
|
|
||||||
IterEasy ItHEasy() {return GetHeadIterEasy ();}
|
IterEasy ItHEasy() {return GetHeadIterEasy ();}
|
||||||
|
@ -22,11 +22,11 @@ namespace ZNsMain
|
|||||||
typedef TTypArg TypeArg ;
|
typedef TTypArg TypeArg ;
|
||||||
typedef TSize TypeSize ;
|
typedef TSize TypeSize ;
|
||||||
public:
|
public:
|
||||||
class ZCDataPoint; class ZCDataPointC ;
|
class ZCNodePoint; class ZCDataPointC ;
|
||||||
public:
|
public:
|
||||||
typedef TypeData* IterEasy ;
|
typedef TypeData* IterEasy ;
|
||||||
typedef TypeData* TypeNode ; // ZCLinkPoint::GetNode() 의 반환형.
|
typedef TypeData* TypeNode ; // ZCLinkPoint::GetNode() 의 반환형.
|
||||||
typedef ZCDataPoint TypeIter ;
|
typedef ZCNodePoint TypeIter ;
|
||||||
typedef ZtCArray TypeThis ;
|
typedef ZtCArray TypeThis ;
|
||||||
|
|
||||||
typedef const TypeThis TypeThisC ;
|
typedef const TypeThis TypeThisC ;
|
||||||
@ -36,12 +36,12 @@ namespace ZNsMain
|
|||||||
|
|
||||||
typedef ZCDataPointC iteratorC ;
|
typedef ZCDataPointC iteratorC ;
|
||||||
/**********************************************/
|
/**********************************************/
|
||||||
typedef ZCDataPoint iterator ;
|
typedef ZCNodePoint iterator ;
|
||||||
typedef ZCDataPointC const_iterator;
|
typedef ZCDataPointC const_iterator;
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
||||||
class ZCDataPoint
|
class ZCNodePoint
|
||||||
{
|
{
|
||||||
private: mutable
|
private: mutable
|
||||||
TypeData* mp_Data ; mutable
|
TypeData* mp_Data ; mutable
|
||||||
@ -49,7 +49,7 @@ namespace ZNsMain
|
|||||||
ZtCArray& mr_CArray;
|
ZtCArray& mr_CArray;
|
||||||
public:
|
public:
|
||||||
|
|
||||||
ZCDataPoint(ZtCArray& AR_CArray, Type& AR_CData, TSize AL_ElePos) :
|
ZCNodePoint(ZtCArray& AR_CArray, Type& AR_CData, TSize AL_ElePos) :
|
||||||
mr_CArray(AR_CArray)
|
mr_CArray(AR_CArray)
|
||||||
/*****************************************************************/
|
/*****************************************************************/
|
||||||
{
|
{
|
||||||
@ -57,21 +57,21 @@ namespace ZNsMain
|
|||||||
mr_CArray=&AR_CArray;
|
mr_CArray=&AR_CArray;
|
||||||
ml_ElePos=AL_ElePos ;
|
ml_ElePos=AL_ElePos ;
|
||||||
}/*
|
}/*
|
||||||
ZCDataPoint(ZtCArray& AR_CArray, Type& AR_CData, TSize AL_ElePos)*/
|
ZCNodePoint(ZtCArray& AR_CArray, Type& AR_CData, TSize AL_ElePos)*/
|
||||||
|
|
||||||
ZCDataPoint(ZtCArray& AR_CArray) : mr_CArray(AR_CArray)
|
ZCNodePoint(ZtCArray& AR_CArray) : mr_CArray(AR_CArray)
|
||||||
{
|
{
|
||||||
mp_Data = AR_CArray.mp_TypeArr ;
|
mp_Data = AR_CArray.mp_TypeArr ;
|
||||||
ml_ElePos=(AR_CArray.size()>0 ? 1 : 0 ) ;
|
ml_ElePos=(AR_CArray.size()>0 ? 1 : 0 ) ;
|
||||||
}/*
|
}/*
|
||||||
ZCDataPoint(ZtCArray& AR_CArray)*/
|
ZCNodePoint(ZtCArray& AR_CArray)*/
|
||||||
|
|
||||||
ZCDataPoint(const ZCDataPoint& rhs) : mr_CArray(rhs.mr_CArray)
|
ZCNodePoint(const ZCNodePoint& rhs) : mr_CArray(rhs.mr_CArray)
|
||||||
{
|
{
|
||||||
mp_Data = rhs.mp_TypeArr ;
|
mp_Data = rhs.mp_TypeArr ;
|
||||||
ml_ElePos= (mr_CArray.size()>0 ? 1 : 0 );
|
ml_ElePos= (mr_CArray.size()>0 ? 1 : 0 );
|
||||||
}/*
|
}/*
|
||||||
ZCDataPoint(const ZCDataPoint& rhs)*/
|
ZCNodePoint(const ZCNodePoint& rhs)*/
|
||||||
|
|
||||||
|
|
||||||
TypeThis & GetMain() {return mr_CArray ;}
|
TypeThis & GetMain() {return mr_CArray ;}
|
||||||
@ -88,30 +88,30 @@ namespace ZNsMain
|
|||||||
TypeDataC& operator* () const{return *mp_Data;}
|
TypeDataC& operator* () const{return *mp_Data;}
|
||||||
TypeDataC* operator->() const{return mp_Data;}
|
TypeDataC* operator->() const{return mp_Data;}
|
||||||
|
|
||||||
ZCDataPoint& operator++( ){++mp_Data; ++ml_ElePos; return *this;}
|
ZCNodePoint& operator++( ){++mp_Data; ++ml_ElePos; return *this;}
|
||||||
ZCDataPoint operator++(int){++mp_Data; ++ml_ElePos; return *this;}
|
ZCNodePoint operator++(int){++mp_Data; ++ml_ElePos; return *this;}
|
||||||
|
|
||||||
const ZCDataPoint& operator++( ) const{++mp_Data; ++ml_ElePos; return *this;}
|
const ZCNodePoint& operator++( ) const{++mp_Data; ++ml_ElePos; return *this;}
|
||||||
const ZCDataPoint operator++(int) const{++mp_Data; ++ml_ElePos; return *this;}
|
const ZCNodePoint operator++(int) const{++mp_Data; ++ml_ElePos; return *this;}
|
||||||
|
|
||||||
ZCDataPoint operator+(TSize AL_AddPos) const
|
ZCNodePoint operator+(TSize AL_AddPos) const
|
||||||
{
|
{
|
||||||
return ZCDataPoint(*this, mp_Data+AL_AddPos, ml_ElePos+AL_AddPos);
|
return ZCNodePoint(*this, mp_Data+AL_AddPos, ml_ElePos+AL_AddPos);
|
||||||
}/*
|
}/*
|
||||||
ZCDataPoint operator+(TSize AL_AddPos) const*/
|
ZCNodePoint operator+(TSize AL_AddPos) const*/
|
||||||
|
|
||||||
|
|
||||||
bool operator == (const ZCDataPoint& rhs) const
|
bool operator == (const ZCNodePoint& rhs) const
|
||||||
{ return ml_ElePos == rhs.ml_ElePos; }
|
{ return ml_ElePos == rhs.ml_ElePos; }
|
||||||
bool operator != (const ZCDataPoint& rhs) const
|
bool operator != (const ZCNodePoint& rhs) const
|
||||||
{ return ml_ElePos != rhs.ml_ElePos; }
|
{ return ml_ElePos != rhs.ml_ElePos; }
|
||||||
bool operator > (const ZCDataPoint& rhs) const
|
bool operator > (const ZCNodePoint& rhs) const
|
||||||
{ return ml_ElePos > rhs.ml_ElePos; }
|
{ return ml_ElePos > rhs.ml_ElePos; }
|
||||||
bool operator >= (const ZCDataPoint& rhs) const
|
bool operator >= (const ZCNodePoint& rhs) const
|
||||||
{ return ml_ElePos >= rhs.ml_ElePos; }
|
{ return ml_ElePos >= rhs.ml_ElePos; }
|
||||||
bool operator < (const ZCDataPoint& rhs) const
|
bool operator < (const ZCNodePoint& rhs) const
|
||||||
{ return ml_ElePos < rhs.ml_ElePos; }
|
{ return ml_ElePos < rhs.ml_ElePos; }
|
||||||
bool operator <= (const ZCDataPoint& rhs) const
|
bool operator <= (const ZCNodePoint& rhs) const
|
||||||
{ return ml_ElePos <= rhs.ml_ElePos; }
|
{ return ml_ElePos <= rhs.ml_ElePos; }
|
||||||
|
|
||||||
bool operator == (TypeSize AL_Size) const
|
bool operator == (TypeSize AL_Size) const
|
||||||
@ -129,7 +129,7 @@ namespace ZNsMain
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
};/*
|
};/*
|
||||||
class ZCDataPoint*/
|
class ZCNodePoint*/
|
||||||
|
|
||||||
|
|
||||||
class ZCDataPointC
|
class ZCDataPointC
|
||||||
@ -163,12 +163,12 @@ namespace ZNsMain
|
|||||||
ml_ElePos=(mr_CArray.size()>0 ? 1 : 0 ) ;
|
ml_ElePos=(mr_CArray.size()>0 ? 1 : 0 ) ;
|
||||||
}/*
|
}/*
|
||||||
ZCDataPointC(const ZCDataPointC& rhs)*/
|
ZCDataPointC(const ZCDataPointC& rhs)*/
|
||||||
ZCDataPointC(const ZCDataPoint & rhs) : mr_CArray(rhs.mr_CArray)
|
ZCDataPointC(const ZCNodePoint & rhs) : mr_CArray(rhs.mr_CArray)
|
||||||
{
|
{
|
||||||
mp_Data = rhs.mp_TypeArr ;
|
mp_Data = rhs.mp_TypeArr ;
|
||||||
ml_ElePos=(mr_CArray.size()>0 ? 1 : 0 ) ;
|
ml_ElePos=(mr_CArray.size()>0 ? 1 : 0 ) ;
|
||||||
}/*
|
}/*
|
||||||
ZCDataPointC(const ZCDataPoint & rhs)*/
|
ZCDataPointC(const ZCNodePoint & rhs)*/
|
||||||
|
|
||||||
|
|
||||||
TypeSize size () const{return mr_CArray.size();}
|
TypeSize size () const{return mr_CArray.size();}
|
||||||
@ -469,8 +469,8 @@ namespace ZNsMain
|
|||||||
Type& push_front(){return AddHead();}
|
Type& push_front(){return AddHead();}
|
||||||
Type& push_back (){return AddTail();}
|
Type& push_back (){return AddTail();}
|
||||||
|
|
||||||
/***/ ZCDataPoint begin() {return ZCDataPoint(*this);}
|
/***/ ZCNodePoint begin() {return ZCNodePoint(*this);}
|
||||||
const ZCDataPoint begin() const{return ZCDataPoint(*this);}
|
const ZCNodePoint begin() const{return ZCNodePoint(*this);}
|
||||||
|
|
||||||
|
|
||||||
template<typename TFunctor> void IterElement(TFunctor AO_Functor)
|
template<typename TFunctor> void IterElement(TFunctor AO_Functor)
|
||||||
|
@ -795,8 +795,8 @@ namespace ZNsMain
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
class ZCLink ;
|
class ZCLink ;
|
||||||
class ZCLinkPoint ;
|
class ZCNodePoint ;
|
||||||
class ZCLinkPointC ;
|
class ZCNodePointC ;
|
||||||
public:
|
public:
|
||||||
template<typename TypeObjList> friend class ZtCSortObjList;
|
template<typename TypeObjList> friend class ZtCSortObjList;
|
||||||
/*********************************************************************/
|
/*********************************************************************/
|
||||||
@ -813,29 +813,29 @@ namespace ZNsMain
|
|||||||
|
|
||||||
typedef ZtCObjList TypeThis ;
|
typedef ZtCObjList TypeThis ;
|
||||||
typedef ZCLink TypeLink ;
|
typedef ZCLink TypeLink ;
|
||||||
typedef ZCLink TypeNode ; // ZCLinkPoint::GetNode() 의 반환형.
|
typedef ZCLink TypeNode ; // ZCNodePoint::GetNode() 의 반환형.
|
||||||
typedef TypeThis TypeList ;
|
typedef TypeThis TypeList ;
|
||||||
|
|
||||||
typedef ZCLink* IterEasy ; // 가장 간단하게 쓰일 수 있는 반복자.
|
typedef ZCLink* IterEasy ; // 가장 간단하게 쓰일 수 있는 반복자.
|
||||||
typedef ZCLinkPoint TypeIter ;
|
typedef ZCNodePoint TypeIter ;
|
||||||
typedef ZCLinkPointC TypeIterC ;
|
typedef ZCNodePointC TypeIterC ;
|
||||||
/*********************************************************************/
|
/*********************************************************************/
|
||||||
typedef ZCLinkPoint iterator ; // 다양한 기능을 가진 반복자.
|
typedef ZCNodePoint iterator ; // 다양한 기능을 가진 반복자.
|
||||||
typedef ZCLinkPointC const_iterator;
|
typedef ZCNodePointC const_iterator;
|
||||||
/*********************************************************************/
|
/*********************************************************************/
|
||||||
|
|
||||||
typedef const TypeThis TypeThisC ;
|
typedef const TypeThis TypeThisC ;
|
||||||
typedef const TypeList TypeListC ;
|
typedef const TypeList TypeListC ;
|
||||||
typedef const TypeData TypeDataC ;
|
typedef const TypeData TypeDataC ;
|
||||||
typedef const TypeLink TypeLinkC ;
|
typedef const TypeLink TypeLinkC ;
|
||||||
typedef const TypeNode TypeNodeC ; // ZCLinkPoint::GetNode() const 의 반환형.
|
typedef const TypeNode TypeNodeC ; // ZCNodePoint::GetNode() const 의 반환형.
|
||||||
|
|
||||||
typedef const IterEasy IterEasyC ;
|
typedef const IterEasy IterEasyC ;
|
||||||
typedef const ZCLink ZCLinkC ;
|
typedef const ZCLink ZCLinkC ;
|
||||||
typedef const ZCLinkOpt ZCLinkOptC ;
|
typedef const ZCLinkOpt ZCLinkOptC ;
|
||||||
typedef const ZCDataOpt ZCDataOptC ;
|
typedef const ZCDataOpt ZCDataOptC ;
|
||||||
|
|
||||||
typedef ZCLinkPointC iteratorC ;
|
typedef ZCNodePointC iteratorC ;
|
||||||
|
|
||||||
/*********************************************************************/
|
/*********************************************************************/
|
||||||
typedef typename TFeeeHeap::
|
typedef typename TFeeeHeap::
|
||||||
@ -1048,46 +1048,46 @@ namespace ZNsMain
|
|||||||
class ZCLink*/
|
class ZCLink*/
|
||||||
|
|
||||||
|
|
||||||
class ZCLinkPoint
|
class ZCNodePoint
|
||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
mutable TypeLink* mp_CurrLink; // 사실상 mp_CurrLink!=0
|
mutable TypeLink* mp_CurrLink; // 사실상 mp_CurrLink!=0
|
||||||
mutable TypeSize ml_CurrPos ;
|
mutable TypeSize ml_CurrPos ;
|
||||||
/*****/ TypeList& mr_CurrList;
|
/*****/ TypeList& mr_CurrList;
|
||||||
public :
|
public :
|
||||||
ZCLinkPoint(TypeList& AR_TypeList) :
|
ZCNodePoint(TypeList& AR_TypeList) :
|
||||||
mr_CurrList(AR_TypeList)
|
mr_CurrList(AR_TypeList)
|
||||||
{
|
{
|
||||||
mp_CurrLink = AR_TypeList.HeadPtr();
|
mp_CurrLink = AR_TypeList.HeadPtr();
|
||||||
ml_CurrPos = 1 ;
|
ml_CurrPos = 1 ;
|
||||||
}
|
}
|
||||||
ZCLinkPoint(const ZCLinkPoint& rhs) :
|
ZCNodePoint(const ZCNodePoint& rhs) :
|
||||||
mr_CurrList(rhs.mr_CurrList),
|
mr_CurrList(rhs.mr_CurrList),
|
||||||
mp_CurrLink(rhs.mp_CurrLink),
|
mp_CurrLink(rhs.mp_CurrLink),
|
||||||
ml_CurrPos (rhs.ml_CurrPos )
|
ml_CurrPos (rhs.ml_CurrPos )
|
||||||
{}
|
{}
|
||||||
public :
|
public :
|
||||||
|
|
||||||
static ZCLinkPoint MakeTailPoint(TypeList& AR_TypeList)
|
static ZCNodePoint MakeTailPoint(TypeList& AR_TypeList)
|
||||||
{
|
{
|
||||||
ZCLinkPoint VO_ZCLinkPoint(AR_TypeList);
|
ZCNodePoint VO_ZCLinkPoint(AR_TypeList);
|
||||||
|
|
||||||
VO_ZCLinkPoint.mp_CurrLink = AR_TypeList.mp_TailLink;
|
VO_ZCLinkPoint.mp_CurrLink = AR_TypeList.mp_TailLink;
|
||||||
VO_ZCLinkPoint.ml_CurrPos = AR_TypeList.ml_LinkSize;
|
VO_ZCLinkPoint.ml_CurrPos = AR_TypeList.ml_LinkSize;
|
||||||
|
|
||||||
return VO_ZCLinkPoint; /****************************/
|
return VO_ZCLinkPoint; /****************************/
|
||||||
}/*
|
}/*
|
||||||
static ZCLinkPoint MakeTailPoint(TypeList& AR_TypeList)*/
|
static ZCNodePoint MakeTailPoint(TypeList& AR_TypeList)*/
|
||||||
static ZCLinkPoint MakeTailPoint(const TypeIter& AR_TypeIter)
|
static ZCNodePoint MakeTailPoint(const TypeIter& AR_TypeIter)
|
||||||
{
|
{
|
||||||
ZCLinkPoint VO_ZCLinkPoint(AR_TypeIter);
|
ZCNodePoint VO_ZCLinkPoint(AR_TypeIter);
|
||||||
|
|
||||||
VO_ZCLinkPoint.mp_CurrLink = VO_ZCLinkPoint.mr_TypeList.mp_TailLink;
|
VO_ZCLinkPoint.mp_CurrLink = VO_ZCLinkPoint.mr_TypeList.mp_TailLink;
|
||||||
VO_ZCLinkPoint.ml_CurrPos = VO_ZCLinkPoint.mr_TypeList.ml_LinkSize;
|
VO_ZCLinkPoint.ml_CurrPos = VO_ZCLinkPoint.mr_TypeList.ml_LinkSize;
|
||||||
|
|
||||||
return VO_ZCLinkPoint; /****************************/
|
return VO_ZCLinkPoint; /****************************/
|
||||||
}/*
|
}/*
|
||||||
static ZCLinkPoint MakeTailPoint(const TypeIter& AR_TypeIter)*/
|
static ZCNodePoint MakeTailPoint(const TypeIter& AR_TypeIter)*/
|
||||||
|
|
||||||
public :
|
public :
|
||||||
|
|
||||||
@ -1105,7 +1105,7 @@ namespace ZNsMain
|
|||||||
bool IsEmpty() const{return mr_CurrList.size()<1;}
|
bool IsEmpty() const{return mr_CurrList.size()<1;}
|
||||||
|
|
||||||
|
|
||||||
ZCLinkPoint& operator= (const ZCLinkPoint& rhs){ return *this; }
|
ZCNodePoint& operator= (const ZCNodePoint& rhs){ return *this; }
|
||||||
|
|
||||||
|
|
||||||
TypeData & operator*() {return **mp_CurrLink;}
|
TypeData & operator*() {return **mp_CurrLink;}
|
||||||
@ -1118,17 +1118,17 @@ namespace ZNsMain
|
|||||||
operator TypeLinkC& () const{return *mp_CurrLink;}
|
operator TypeLinkC& () const{return *mp_CurrLink;}
|
||||||
|
|
||||||
|
|
||||||
bool operator == (const ZCLinkPoint& rhs) const
|
bool operator == (const ZCNodePoint& rhs) const
|
||||||
{ return ml_CurrPos == rhs.ml_CurrPos; }
|
{ return ml_CurrPos == rhs.ml_CurrPos; }
|
||||||
bool operator != (const ZCLinkPoint& rhs) const
|
bool operator != (const ZCNodePoint& rhs) const
|
||||||
{ return ml_CurrPos != rhs.ml_CurrPos; }
|
{ return ml_CurrPos != rhs.ml_CurrPos; }
|
||||||
bool operator > (const ZCLinkPoint& rhs) const
|
bool operator > (const ZCNodePoint& rhs) const
|
||||||
{ return ml_CurrPos > rhs.ml_CurrPos; }
|
{ return ml_CurrPos > rhs.ml_CurrPos; }
|
||||||
bool operator >= (const ZCLinkPoint& rhs) const
|
bool operator >= (const ZCNodePoint& rhs) const
|
||||||
{ return ml_CurrPos >= rhs.ml_CurrPos; }
|
{ return ml_CurrPos >= rhs.ml_CurrPos; }
|
||||||
bool operator < (const ZCLinkPoint& rhs) const
|
bool operator < (const ZCNodePoint& rhs) const
|
||||||
{ return ml_CurrPos < rhs.ml_CurrPos; }
|
{ return ml_CurrPos < rhs.ml_CurrPos; }
|
||||||
bool operator <= (const ZCLinkPoint& rhs) const
|
bool operator <= (const ZCNodePoint& rhs) const
|
||||||
{ return ml_CurrPos <= rhs.ml_CurrPos; }
|
{ return ml_CurrPos <= rhs.ml_CurrPos; }
|
||||||
|
|
||||||
bool operator == (TypeSize AL_Size) const
|
bool operator == (TypeSize AL_Size) const
|
||||||
@ -1145,44 +1145,44 @@ namespace ZNsMain
|
|||||||
{ return ml_CurrPos <= AL_Size; }
|
{ return ml_CurrPos <= AL_Size; }
|
||||||
|
|
||||||
|
|
||||||
const ZCLinkPoint& operator++() const
|
const ZCNodePoint& operator++() const
|
||||||
{
|
{
|
||||||
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
||||||
|
|
||||||
++ml_CurrPos; return *this ;
|
++ml_CurrPos; return *this ;
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPoint& operator++() const*/
|
const ZCNodePoint& operator++() const*/
|
||||||
|
|
||||||
const ZCLinkPoint& operator--() const
|
const ZCNodePoint& operator--() const
|
||||||
{
|
{
|
||||||
mp_CurrLink = mp_CurrLink->mp_PrevLink;
|
mp_CurrLink = mp_CurrLink->mp_PrevLink;
|
||||||
|
|
||||||
--ml_CurrPos; return *this ;
|
--ml_CurrPos; return *this ;
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPoint& operator--() const*/
|
const ZCNodePoint& operator--() const*/
|
||||||
|
|
||||||
ZCLinkPoint operator++(int) const
|
ZCNodePoint operator++(int) const
|
||||||
{
|
{
|
||||||
ZCLinkPoint VO_NowPoint(*this);
|
ZCNodePoint VO_NowPoint(*this);
|
||||||
|
|
||||||
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
||||||
|
|
||||||
++ml_CurrPos ; return VO_NowPoint ;
|
++ml_CurrPos ; return VO_NowPoint ;
|
||||||
}/*
|
}/*
|
||||||
ZCLinkPoint operator++(int) const*/
|
ZCNodePoint operator++(int) const*/
|
||||||
|
|
||||||
ZCLinkPoint operator--(int) const
|
ZCNodePoint operator--(int) const
|
||||||
{
|
{
|
||||||
ZCLinkPoint VO_NowPoint(*this);
|
ZCNodePoint VO_NowPoint(*this);
|
||||||
|
|
||||||
mp_CurrLink = mp_CurrLink->mp_PrevLink;
|
mp_CurrLink = mp_CurrLink->mp_PrevLink;
|
||||||
|
|
||||||
--ml_CurrPos; return VO_NowPoint ;
|
--ml_CurrPos; return VO_NowPoint ;
|
||||||
}/*
|
}/*
|
||||||
ZCLinkPoint operator--(int) const*/
|
ZCNodePoint operator--(int) const*/
|
||||||
|
|
||||||
|
|
||||||
const ZCLinkPoint& operator+=(TypeSize AL_Distance) const
|
const ZCNodePoint& operator+=(TypeSize AL_Distance) const
|
||||||
{
|
{
|
||||||
if(IsEmpty()){return *this;}
|
if(IsEmpty()){return *this;}
|
||||||
|
|
||||||
@ -1191,77 +1191,77 @@ namespace ZNsMain
|
|||||||
|
|
||||||
return *this; /*:::::::::::::::::::::::::::*/
|
return *this; /*:::::::::::::::::::::::::::*/
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPoint& operator+=(TypeSize AL_Distance) const*/
|
const ZCNodePoint& operator+=(TypeSize AL_Distance) const*/
|
||||||
|
|
||||||
const ZCLinkPoint& operator-=(TypeSize AL_Distance) const
|
const ZCNodePoint& operator-=(TypeSize AL_Distance) const
|
||||||
{
|
{
|
||||||
mp_CurrLink = &((*mp_CurrLink)-AL_Distance);
|
mp_CurrLink = &((*mp_CurrLink)-AL_Distance);
|
||||||
ml_CurrPos -= AL_Distance ;
|
ml_CurrPos -= AL_Distance ;
|
||||||
|
|
||||||
return *this; /*::::::::::::::::::::::::::*/
|
return *this; /*::::::::::::::::::::::::::*/
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPoint& operator-=(TypeSize AL_Distance) const*/
|
const ZCNodePoint& operator-=(TypeSize AL_Distance) const*/
|
||||||
|
|
||||||
public:
|
public:
|
||||||
};/*
|
};/*
|
||||||
class ZCLinkPoint*/
|
class ZCNodePoint*/
|
||||||
|
|
||||||
|
|
||||||
class ZCLinkPointC
|
class ZCNodePointC
|
||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
const TypeList& mr_CurrList;
|
const TypeList& mr_CurrList;
|
||||||
mutable TypeLinkC* mp_CurrLink; // 사실상 mp_CurrLink!=0
|
mutable TypeLinkC* mp_CurrLink; // 사실상 mp_CurrLink!=0
|
||||||
mutable TypeSize ml_CurrPos ;
|
mutable TypeSize ml_CurrPos ;
|
||||||
public :
|
public :
|
||||||
ZCLinkPointC(const TypeList& AR_TypeList) :
|
ZCNodePointC(const TypeList& AR_TypeList) :
|
||||||
mr_CurrList(AR_TypeList)
|
mr_CurrList(AR_TypeList)
|
||||||
{
|
{
|
||||||
mp_CurrLink = AR_TypeList.HeadPtr();
|
mp_CurrLink = AR_TypeList.HeadPtr();
|
||||||
ml_CurrPos = 1 ;
|
ml_CurrPos = 1 ;
|
||||||
}
|
}
|
||||||
ZCLinkPointC(const ZCLinkPoint & rhs) :
|
ZCNodePointC(const ZCNodePoint & rhs) :
|
||||||
mr_CurrList( rhs.GetMain()),
|
mr_CurrList( rhs.GetMain()),
|
||||||
mp_CurrLink(&rhs.GetNode()),
|
mp_CurrLink(&rhs.GetNode()),
|
||||||
ml_CurrPos ( rhs.GetPos ())
|
ml_CurrPos ( rhs.GetPos ())
|
||||||
{}
|
{}
|
||||||
ZCLinkPointC(const ZCLinkPointC& rhs) :
|
ZCNodePointC(const ZCNodePointC& rhs) :
|
||||||
mr_CurrList(rhs.mr_CurrList),
|
mr_CurrList(rhs.mr_CurrList),
|
||||||
mp_CurrLink(rhs.mp_CurrLink),
|
mp_CurrLink(rhs.mp_CurrLink),
|
||||||
ml_CurrPos (rhs.ml_CurrPos )
|
ml_CurrPos (rhs.ml_CurrPos )
|
||||||
{}
|
{}
|
||||||
public :
|
public :
|
||||||
|
|
||||||
static ZCLinkPointC MakeTailPoint(const TypeList& AR_TypeList)
|
static ZCNodePointC MakeTailPoint(const TypeList& AR_TypeList)
|
||||||
{
|
{
|
||||||
ZCLinkPointC VO_ZCLinkPoint(AR_TypeList);
|
ZCNodePointC VO_ZCLinkPoint(AR_TypeList);
|
||||||
|
|
||||||
VO_ZCLinkPoint.mp_CurrLink = AR_TypeList.mp_TailLink;
|
VO_ZCLinkPoint.mp_CurrLink = AR_TypeList.mp_TailLink;
|
||||||
VO_ZCLinkPoint.ml_CurrPos = AR_TypeList.ml_LinkSize;
|
VO_ZCLinkPoint.ml_CurrPos = AR_TypeList.ml_LinkSize;
|
||||||
|
|
||||||
return VO_ZCLinkPoint; /****************/
|
return VO_ZCLinkPoint; /****************/
|
||||||
}/*
|
}/*
|
||||||
static ZCLinkPointC MakeTailPoint(const TypeList& AR_TypeList)*/
|
static ZCNodePointC MakeTailPoint(const TypeList& AR_TypeList)*/
|
||||||
static ZCLinkPointC MakeTailPoint(const ZCLinkPoint& AR_TypeIter)
|
static ZCNodePointC MakeTailPoint(const ZCNodePoint& AR_TypeIter)
|
||||||
{
|
{
|
||||||
ZCLinkPointC VO_ZCLinkPoint(AR_TypeIter);
|
ZCNodePointC VO_ZCLinkPoint(AR_TypeIter);
|
||||||
|
|
||||||
VO_ZCLinkPoint.mp_CurrLink = VO_ZCLinkPoint.mr_TypeList.mp_TailLink;
|
VO_ZCLinkPoint.mp_CurrLink = VO_ZCLinkPoint.mr_TypeList.mp_TailLink;
|
||||||
VO_ZCLinkPoint.ml_CurrPos = VO_ZCLinkPoint.mr_TypeList.ml_LinkSize;
|
VO_ZCLinkPoint.ml_CurrPos = VO_ZCLinkPoint.mr_TypeList.ml_LinkSize;
|
||||||
|
|
||||||
return VO_ZCLinkPoint; /****************/
|
return VO_ZCLinkPoint; /****************/
|
||||||
}/*
|
}/*
|
||||||
static ZCLinkPointC MakeTailPoint(const ZCLinkPoint& AR_TypeIter)*/
|
static ZCNodePointC MakeTailPoint(const ZCNodePoint& AR_TypeIter)*/
|
||||||
static ZCLinkPointC MakeTailPoint(const ZCLinkPointC& AR_TypeIter)
|
static ZCNodePointC MakeTailPoint(const ZCNodePointC& AR_TypeIter)
|
||||||
{
|
{
|
||||||
ZCLinkPointC VO_ZCLinkPoint(AR_TypeIter);
|
ZCNodePointC VO_ZCLinkPoint(AR_TypeIter);
|
||||||
|
|
||||||
VO_ZCLinkPoint.mp_CurrLink = VO_ZCLinkPoint.mr_TypeList.mp_TailLink;
|
VO_ZCLinkPoint.mp_CurrLink = VO_ZCLinkPoint.mr_TypeList.mp_TailLink;
|
||||||
VO_ZCLinkPoint.ml_CurrPos = VO_ZCLinkPoint.mr_TypeList.ml_LinkSize;
|
VO_ZCLinkPoint.ml_CurrPos = VO_ZCLinkPoint.mr_TypeList.ml_LinkSize;
|
||||||
|
|
||||||
return VO_ZCLinkPoint; /****************/
|
return VO_ZCLinkPoint; /****************/
|
||||||
}/*
|
}/*
|
||||||
static ZCLinkPointC MakeTailPoint(const ZCLinkPointC& AR_TypeIter)*/
|
static ZCNodePointC MakeTailPoint(const ZCNodePointC& AR_TypeIter)*/
|
||||||
|
|
||||||
public :
|
public :
|
||||||
|
|
||||||
@ -1276,7 +1276,7 @@ namespace ZNsMain
|
|||||||
bool IsEmpty() const{return mr_CurrList.size()<1;}
|
bool IsEmpty() const{return mr_CurrList.size()<1;}
|
||||||
|
|
||||||
|
|
||||||
ZCLinkPointC& operator= (const ZCLinkPointC& rhs){ return *this; }
|
ZCNodePointC& operator= (const ZCNodePointC& rhs){ return *this; }
|
||||||
|
|
||||||
|
|
||||||
TypeDataC& operator*() const{return **mp_CurrLink;}
|
TypeDataC& operator*() const{return **mp_CurrLink;}
|
||||||
@ -1284,17 +1284,17 @@ namespace ZNsMain
|
|||||||
operator TypeLinkC& () const{return *mp_CurrLink;}
|
operator TypeLinkC& () const{return *mp_CurrLink;}
|
||||||
|
|
||||||
|
|
||||||
bool operator == (const ZCLinkPointC& rhs) const
|
bool operator == (const ZCNodePointC& rhs) const
|
||||||
{ return ml_CurrPos == rhs.ml_CurrPos; }
|
{ return ml_CurrPos == rhs.ml_CurrPos; }
|
||||||
bool operator != (const ZCLinkPointC& rhs) const
|
bool operator != (const ZCNodePointC& rhs) const
|
||||||
{ return ml_CurrPos != rhs.ml_CurrPos; }
|
{ return ml_CurrPos != rhs.ml_CurrPos; }
|
||||||
bool operator > (const ZCLinkPointC& rhs) const
|
bool operator > (const ZCNodePointC& rhs) const
|
||||||
{ return ml_CurrPos > rhs.ml_CurrPos; }
|
{ return ml_CurrPos > rhs.ml_CurrPos; }
|
||||||
bool operator >= (const ZCLinkPointC& rhs) const
|
bool operator >= (const ZCNodePointC& rhs) const
|
||||||
{ return ml_CurrPos >= rhs.ml_CurrPos; }
|
{ return ml_CurrPos >= rhs.ml_CurrPos; }
|
||||||
bool operator < (const ZCLinkPointC& rhs) const
|
bool operator < (const ZCNodePointC& rhs) const
|
||||||
{ return ml_CurrPos < rhs.ml_CurrPos; }
|
{ return ml_CurrPos < rhs.ml_CurrPos; }
|
||||||
bool operator <= (const ZCLinkPointC& rhs) const
|
bool operator <= (const ZCNodePointC& rhs) const
|
||||||
{ return ml_CurrPos <= rhs.ml_CurrPos; }
|
{ return ml_CurrPos <= rhs.ml_CurrPos; }
|
||||||
|
|
||||||
bool operator == (TypeSize AL_Size) const
|
bool operator == (TypeSize AL_Size) const
|
||||||
@ -1311,44 +1311,44 @@ namespace ZNsMain
|
|||||||
{ return ml_CurrPos <= AL_Size; }
|
{ return ml_CurrPos <= AL_Size; }
|
||||||
|
|
||||||
|
|
||||||
const ZCLinkPointC& operator++() const
|
const ZCNodePointC& operator++() const
|
||||||
{
|
{
|
||||||
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
||||||
|
|
||||||
++ml_CurrPos; return *this ;
|
++ml_CurrPos; return *this ;
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPointC& operator++() const*/
|
const ZCNodePointC& operator++() const*/
|
||||||
|
|
||||||
const ZCLinkPointC& operator--() const
|
const ZCNodePointC& operator--() const
|
||||||
{
|
{
|
||||||
mp_CurrLink = mp_CurrLink->mp_PrevLink;
|
mp_CurrLink = mp_CurrLink->mp_PrevLink;
|
||||||
|
|
||||||
--ml_CurrPos; return *this ;
|
--ml_CurrPos; return *this ;
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPointC& operator--() const*/
|
const ZCNodePointC& operator--() const*/
|
||||||
|
|
||||||
ZCLinkPointC operator++(int) const
|
ZCNodePointC operator++(int) const
|
||||||
{
|
{
|
||||||
ZCLinkPointC VO_NowPoint(*this);
|
ZCNodePointC VO_NowPoint(*this);
|
||||||
|
|
||||||
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
||||||
|
|
||||||
++ml_CurrPos ; return VO_NowPoint ;
|
++ml_CurrPos ; return VO_NowPoint ;
|
||||||
}/*
|
}/*
|
||||||
ZCLinkPointC operator++(int) const*/
|
ZCNodePointC operator++(int) const*/
|
||||||
|
|
||||||
ZCLinkPointC operator--(int) const
|
ZCNodePointC operator--(int) const
|
||||||
{
|
{
|
||||||
ZCLinkPointC VO_NowPoint(*this);
|
ZCNodePointC VO_NowPoint(*this);
|
||||||
|
|
||||||
mp_CurrLink = mp_CurrLink->mp_PrevLink;
|
mp_CurrLink = mp_CurrLink->mp_PrevLink;
|
||||||
|
|
||||||
--ml_CurrPos; return VO_NowPoint ;
|
--ml_CurrPos; return VO_NowPoint ;
|
||||||
}/*
|
}/*
|
||||||
ZCLinkPointC operator--(int) const*/
|
ZCNodePointC operator--(int) const*/
|
||||||
|
|
||||||
|
|
||||||
const ZCLinkPointC& operator+=(TypeSize AL_Distance) const
|
const ZCNodePointC& operator+=(TypeSize AL_Distance) const
|
||||||
{
|
{
|
||||||
if(IsEmpty()){return *this;}
|
if(IsEmpty()){return *this;}
|
||||||
|
|
||||||
@ -1357,28 +1357,28 @@ namespace ZNsMain
|
|||||||
|
|
||||||
return *this; /*:::::::::::::::::::::::::::*/
|
return *this; /*:::::::::::::::::::::::::::*/
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPointC& operator+=(TypeSize AL_Distance) const*/
|
const ZCNodePointC& operator+=(TypeSize AL_Distance) const*/
|
||||||
|
|
||||||
const ZCLinkPointC& operator-=(TypeSize AL_Distance) const
|
const ZCNodePointC& operator-=(TypeSize AL_Distance) const
|
||||||
{
|
{
|
||||||
mp_CurrLink = &((*mp_CurrLink)-AL_Distance);
|
mp_CurrLink = &((*mp_CurrLink)-AL_Distance);
|
||||||
ml_CurrPos -= AL_Distance ;
|
ml_CurrPos -= AL_Distance ;
|
||||||
|
|
||||||
return *this; /*::::::::::::::::::::::::::*/
|
return *this; /*::::::::::::::::::::::::::*/
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPointC& operator-=(TypeSize AL_Distance) const*/
|
const ZCNodePointC& operator-=(TypeSize AL_Distance) const*/
|
||||||
|
|
||||||
public:
|
public:
|
||||||
};/*
|
};/*
|
||||||
class ZCLinkPointC*/
|
class ZCNodePointC*/
|
||||||
|
|
||||||
|
|
||||||
class ZCLinkPointEx : public ZCLinkPoint
|
class ZCLinkPointEx : public ZCNodePoint
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
ZCLinkPointEx(TypeList& AR_TypeList): ZCLinkPoint(AR_TypeList){}
|
ZCLinkPointEx(TypeList& AR_TypeList): ZCNodePoint(AR_TypeList){}
|
||||||
ZCLinkPointEx(const ZCLinkPoint & rhs): ZCLinkPoint(rhs ){}
|
ZCLinkPointEx(const ZCNodePoint & rhs): ZCNodePoint(rhs ){}
|
||||||
ZCLinkPointEx(const ZCLinkPointEx& rhs): ZCLinkPoint(rhs ){}
|
ZCLinkPointEx(const ZCLinkPointEx& rhs): ZCNodePoint(rhs ){}
|
||||||
public:
|
public:
|
||||||
|
|
||||||
static ZCLinkPointEx MakeTailPoint(const ZCLinkPointEx& AR_TypeIter)
|
static ZCLinkPointEx MakeTailPoint(const ZCLinkPointEx& AR_TypeIter)
|
||||||
@ -3161,10 +3161,10 @@ namespace ZNsMain
|
|||||||
{ return GetDataInIter((ZCLinkC*)ARR_Iterator , AI_FarNum); }
|
{ return GetDataInIter((ZCLinkC*)ARR_Iterator , AI_FarNum); }
|
||||||
|
|
||||||
|
|
||||||
iterator begin () { return ZCLinkPoint (*this); }
|
iterator begin () { return ZCNodePoint (*this); }
|
||||||
iteratorC begin () const{ return ZCLinkPointC(*this); }
|
iteratorC begin () const{ return ZCNodePointC(*this); }
|
||||||
iterator end () { return ZCLinkPoint ::MakeTailPoint(*this); }
|
iterator end () { return ZCNodePoint ::MakeTailPoint(*this); }
|
||||||
iteratorC end () const{ return ZCLinkPointC::MakeTailPoint(*this); }
|
iteratorC end () const{ return ZCNodePointC::MakeTailPoint(*this); }
|
||||||
|
|
||||||
|
|
||||||
IterEasy ItHEasy() {return GetHeadIterEasy (); }
|
IterEasy ItHEasy() {return GetHeadIterEasy (); }
|
||||||
|
@ -768,8 +768,8 @@ namespace ZNsMain
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
class ZCLink ;
|
class ZCLink ;
|
||||||
class ZCLinkPoint ;
|
class ZCNodePoint ;
|
||||||
class ZCLinkPointC;
|
class ZNodekPointC;
|
||||||
/**************************************************/
|
/**************************************************/
|
||||||
typedef TType Type ;
|
typedef TType Type ;
|
||||||
typedef TType TypeData ;
|
typedef TType TypeData ;
|
||||||
@ -780,9 +780,10 @@ namespace ZNsMain
|
|||||||
typedef TMoveObj TypeMoveObj ;
|
typedef TMoveObj TypeMoveObj ;
|
||||||
|
|
||||||
typedef ZCLink TypeLink ;
|
typedef ZCLink TypeLink ;
|
||||||
|
typedef ZCLink TypeNode ;
|
||||||
typedef ZtCSimList TypeList ;
|
typedef ZtCSimList TypeList ;
|
||||||
typedef ZtCSimList TypeThis ;
|
typedef ZtCSimList TypeThis ;
|
||||||
typedef ZCLinkPoint TypeIter ;
|
typedef ZCNodePoint TypeIter ;
|
||||||
/**************************************************/
|
/**************************************************/
|
||||||
typedef const ZCLink ZCLinkC ;
|
typedef const ZCLink ZCLinkC ;
|
||||||
|
|
||||||
@ -790,10 +791,11 @@ namespace ZNsMain
|
|||||||
typedef const TypeData TypeDataC ;
|
typedef const TypeData TypeDataC ;
|
||||||
typedef const TypeList TypeListC ;
|
typedef const TypeList TypeListC ;
|
||||||
typedef const TypeLink TypeLinkC ;
|
typedef const TypeLink TypeLinkC ;
|
||||||
|
typedef const TypeNode TypeNodeC ;
|
||||||
/**************************************************/
|
/**************************************************/
|
||||||
typedef ZCLinkPoint iterator ;
|
typedef ZCNodePoint iterator ;
|
||||||
typedef ZCLinkPointC const_iterator ;
|
typedef ZNodekPointC const_iterator ;
|
||||||
typedef ZCLinkPointC iteratorC ;
|
typedef ZNodekPointC iteratorC ;
|
||||||
/**************************************************/
|
/**************************************************/
|
||||||
typedef typename TFeeeHeap::
|
typedef typename TFeeeHeap::
|
||||||
template ZtCBody<ZtCSimList> ZCFreeHeap;
|
template ZtCBody<ZtCSimList> ZCFreeHeap;
|
||||||
@ -973,54 +975,54 @@ namespace ZNsMain
|
|||||||
class ZCLink*/
|
class ZCLink*/
|
||||||
|
|
||||||
|
|
||||||
class ZCLinkPoint
|
class ZCNodePoint
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
mutable TypeLink* mp_CurrLink; // 사실상 mp_CurrLink!=0
|
mutable TypeLink* mp_CurrLink; // 사실상 mp_CurrLink!=0
|
||||||
mutable TypeSize ml_CurrPos ;
|
mutable TypeSize ml_CurrPos ;
|
||||||
/*****/ TypeList& mr_CurrList;
|
/*****/ TypeList& mr_CurrList;
|
||||||
public:
|
public:
|
||||||
ZCLinkPoint(TypeList& AR_TypeList) :
|
ZCNodePoint(TypeList& AR_TypeList) :
|
||||||
mr_CurrList(AR_TypeList)
|
mr_CurrList(AR_TypeList)
|
||||||
{
|
{
|
||||||
mp_CurrLink = AR_TypeList.HeadPtr();
|
mp_CurrLink = AR_TypeList.HeadPtr();
|
||||||
ml_CurrPos = 1 ;
|
ml_CurrPos = 1 ;
|
||||||
}
|
}
|
||||||
ZCLinkPoint(const ZCLinkPoint& rhs) :
|
ZCNodePoint(const ZCNodePoint& rhs) :
|
||||||
mr_CurrList(rhs.mr_CurrList),
|
mr_CurrList(rhs.mr_CurrList),
|
||||||
mp_CurrLink(rhs.mp_CurrLink),
|
mp_CurrLink(rhs.mp_CurrLink),
|
||||||
ml_CurrPos (rhs.ml_CurrPos )
|
ml_CurrPos (rhs.ml_CurrPos )
|
||||||
{}
|
{}
|
||||||
public :
|
public :
|
||||||
|
|
||||||
static ZCLinkPoint MakeTailPoint(TypeList& AR_TypeList)
|
static ZCNodePoint MakeTailPoint(TypeList& AR_TypeList)
|
||||||
{
|
{
|
||||||
ZCLinkPoint VO_ZCLinkPoint(AR_TypeList);
|
ZCNodePoint VO_ZCLinkPoint(AR_TypeList);
|
||||||
|
|
||||||
VO_ZCLinkPoint.mp_CurrLink = AR_TypeList.mp_TailLink;
|
VO_ZCLinkPoint.mp_CurrLink = AR_TypeList.mp_TailLink;
|
||||||
VO_ZCLinkPoint.ml_CurrPos = AR_TypeList.ml_LinkSize;
|
VO_ZCLinkPoint.ml_CurrPos = AR_TypeList.ml_LinkSize;
|
||||||
|
|
||||||
return VO_ZCLinkPoint; /****************************/
|
return VO_ZCLinkPoint; /****************************/
|
||||||
}/*
|
}/*
|
||||||
static ZCLinkPoint MakeTailPoint(TypeList& AR_TypeList)*/
|
static ZCNodePoint MakeTailPoint(TypeList& AR_TypeList)*/
|
||||||
static ZCLinkPoint MakeTailPoint(const TypeIter& AR_TypeIter)
|
static ZCNodePoint MakeTailPoint(const TypeIter& AR_TypeIter)
|
||||||
{
|
{
|
||||||
ZCLinkPoint VO_ZCLinkPoint(AR_TypeIter);
|
ZCNodePoint VO_ZCLinkPoint(AR_TypeIter);
|
||||||
|
|
||||||
VO_ZCLinkPoint.mp_CurrLink = VO_ZCLinkPoint.mr_TypeList.mp_TailLink;
|
VO_ZCLinkPoint.mp_CurrLink = VO_ZCLinkPoint.mr_TypeList.mp_TailLink;
|
||||||
VO_ZCLinkPoint.ml_CurrPos = VO_ZCLinkPoint.mr_TypeList.ml_LinkSize;
|
VO_ZCLinkPoint.ml_CurrPos = VO_ZCLinkPoint.mr_TypeList.ml_LinkSize;
|
||||||
|
|
||||||
return VO_ZCLinkPoint; /****************************/
|
return VO_ZCLinkPoint; /****************************/
|
||||||
}/*
|
}/*
|
||||||
static ZCLinkPoint MakeTailPoint(const TypeIter& AR_TypeIter)*/
|
static ZCNodePoint MakeTailPoint(const TypeIter& AR_TypeIter)*/
|
||||||
|
|
||||||
public :
|
public :
|
||||||
|
|
||||||
TypeThis & GetMain() {return mr_CurrList;}
|
TypeThis & GetMain() {return mr_CurrList;}
|
||||||
TypeLink & GetNode() {return *mp_CurrLink;}
|
TypeNode & GetNode() {return *mp_CurrLink;}
|
||||||
|
|
||||||
TypeThisC& GetMain() const{return mr_CurrList;}
|
TypeThisC& GetMain() const{return mr_CurrList;}
|
||||||
TypeLinkC& GetNode() const{return *mp_CurrLink;}
|
TypeNodeC& GetNode() const{return *mp_CurrLink;}
|
||||||
/***************************************************/
|
/***************************************************/
|
||||||
TypeSize GetPos () const{return ml_CurrPos ;}
|
TypeSize GetPos () const{return ml_CurrPos ;}
|
||||||
/***************************************************/
|
/***************************************************/
|
||||||
@ -1030,7 +1032,7 @@ namespace ZNsMain
|
|||||||
bool IsEmpty() const{return mr_CurrList.size()<1;}
|
bool IsEmpty() const{return mr_CurrList.size()<1;}
|
||||||
|
|
||||||
|
|
||||||
ZCLinkPoint& operator= (const ZCLinkPoint& rhs){ return *this; }
|
ZCNodePoint& operator= (const ZCNodePoint& rhs){ return *this; }
|
||||||
|
|
||||||
|
|
||||||
TypeData & operator*() {return **mp_CurrLink;}
|
TypeData & operator*() {return **mp_CurrLink;}
|
||||||
@ -1043,17 +1045,17 @@ namespace ZNsMain
|
|||||||
operator TypeLinkC& () const{return *mp_CurrLink;}
|
operator TypeLinkC& () const{return *mp_CurrLink;}
|
||||||
|
|
||||||
|
|
||||||
bool operator == (const ZCLinkPoint& rhs) const
|
bool operator == (const ZCNodePoint& rhs) const
|
||||||
{ return ml_CurrPos == rhs.ml_CurrPos; }
|
{ return ml_CurrPos == rhs.ml_CurrPos; }
|
||||||
bool operator != (const ZCLinkPoint& rhs) const
|
bool operator != (const ZCNodePoint& rhs) const
|
||||||
{ return ml_CurrPos != rhs.ml_CurrPos; }
|
{ return ml_CurrPos != rhs.ml_CurrPos; }
|
||||||
bool operator > (const ZCLinkPoint& rhs) const
|
bool operator > (const ZCNodePoint& rhs) const
|
||||||
{ return ml_CurrPos > rhs.ml_CurrPos; }
|
{ return ml_CurrPos > rhs.ml_CurrPos; }
|
||||||
bool operator >= (const ZCLinkPoint& rhs) const
|
bool operator >= (const ZCNodePoint& rhs) const
|
||||||
{ return ml_CurrPos >= rhs.ml_CurrPos; }
|
{ return ml_CurrPos >= rhs.ml_CurrPos; }
|
||||||
bool operator < (const ZCLinkPoint& rhs) const
|
bool operator < (const ZCNodePoint& rhs) const
|
||||||
{ return ml_CurrPos < rhs.ml_CurrPos; }
|
{ return ml_CurrPos < rhs.ml_CurrPos; }
|
||||||
bool operator <= (const ZCLinkPoint& rhs) const
|
bool operator <= (const ZCNodePoint& rhs) const
|
||||||
{ return ml_CurrPos <= rhs.ml_CurrPos; }
|
{ return ml_CurrPos <= rhs.ml_CurrPos; }
|
||||||
|
|
||||||
bool operator == (TypeSize AL_Size) const
|
bool operator == (TypeSize AL_Size) const
|
||||||
@ -1070,26 +1072,26 @@ namespace ZNsMain
|
|||||||
{ return ml_CurrPos <= AL_Size; }
|
{ return ml_CurrPos <= AL_Size; }
|
||||||
|
|
||||||
|
|
||||||
const ZCLinkPoint& operator++() const
|
const ZCNodePoint& operator++() const
|
||||||
{
|
{
|
||||||
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
||||||
|
|
||||||
++ml_CurrPos; return *this ;
|
++ml_CurrPos; return *this ;
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPoint& operator++() const*/
|
const ZCNodePoint& operator++() const*/
|
||||||
|
|
||||||
ZCLinkPoint operator++(int) const
|
ZCNodePoint operator++(int) const
|
||||||
{
|
{
|
||||||
ZCLinkPoint VO_NowPoint(*this);
|
ZCNodePoint VO_NowPoint(*this);
|
||||||
|
|
||||||
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
||||||
|
|
||||||
++ml_CurrPos ; return VO_NowPoint ;
|
++ml_CurrPos ; return VO_NowPoint ;
|
||||||
}/*
|
}/*
|
||||||
ZCLinkPoint operator++(int) const*/
|
ZCNodePoint operator++(int) const*/
|
||||||
|
|
||||||
|
|
||||||
const ZCLinkPoint& operator+=(TypeSize AL_Distance) const
|
const ZCNodePoint& operator+=(TypeSize AL_Distance) const
|
||||||
{
|
{
|
||||||
if(IsEmpty()){return *this;}
|
if(IsEmpty()){return *this;}
|
||||||
|
|
||||||
@ -1098,68 +1100,68 @@ namespace ZNsMain
|
|||||||
|
|
||||||
return *this; /*:::::::::::::::::::::::::::*/
|
return *this; /*:::::::::::::::::::::::::::*/
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPoint& operator+=(TypeSize AL_Distance) const*/
|
const ZCNodePoint& operator+=(TypeSize AL_Distance) const*/
|
||||||
|
|
||||||
public:
|
public:
|
||||||
};/*
|
};/*
|
||||||
class ZCLinkPoint*/
|
class ZCNodePoint*/
|
||||||
|
|
||||||
|
|
||||||
class ZCLinkPointC
|
class ZNodekPointC
|
||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
const TypeList& mr_CurrList;
|
const TypeList& mr_CurrList;
|
||||||
mutable TypeLinkC* mp_CurrLink; // 사실상 mp_CurrLink!=0
|
mutable TypeLinkC* mp_CurrLink; // 사실상 mp_CurrLink!=0
|
||||||
mutable TypeSize ml_CurrPos ;
|
mutable TypeSize ml_CurrPos ;
|
||||||
public :
|
public :
|
||||||
ZCLinkPointC(const TypeList& AR_TypeList) :
|
ZNodekPointC(const TypeList& AR_TypeList) :
|
||||||
mr_CurrList(AR_TypeList)
|
mr_CurrList(AR_TypeList)
|
||||||
{
|
{
|
||||||
mp_CurrLink = AR_TypeList.HeadPtr();
|
mp_CurrLink = AR_TypeList.HeadPtr();
|
||||||
ml_CurrPos = 1 ;
|
ml_CurrPos = 1 ;
|
||||||
}
|
}
|
||||||
ZCLinkPointC(const ZCLinkPoint & rhs) :
|
ZNodekPointC(const ZCNodePoint & rhs) :
|
||||||
mr_CurrList( rhs.GetMain()),
|
mr_CurrList( rhs.GetMain()),
|
||||||
mp_CurrLink(&rhs.GetNode()),
|
mp_CurrLink(&rhs.GetNode()),
|
||||||
ml_CurrPos ( rhs.GetPos ())
|
ml_CurrPos ( rhs.GetPos ())
|
||||||
{}
|
{}
|
||||||
ZCLinkPointC(const ZCLinkPointC& rhs) :
|
ZNodekPointC(const ZNodekPointC& rhs) :
|
||||||
mr_CurrList(rhs.mr_CurrList),
|
mr_CurrList(rhs.mr_CurrList),
|
||||||
mp_CurrLink(rhs.mp_CurrLink),
|
mp_CurrLink(rhs.mp_CurrLink),
|
||||||
ml_CurrPos (rhs.ml_CurrPos )
|
ml_CurrPos (rhs.ml_CurrPos )
|
||||||
{}
|
{}
|
||||||
public :
|
public :
|
||||||
|
|
||||||
static ZCLinkPointC MakeTailPoint(const TypeList& AR_TypeList)
|
static ZNodekPointC MakeTailPoint(const TypeList& AR_TypeList)
|
||||||
{
|
{
|
||||||
ZCLinkPointC VO_ZCLinkPoint(AR_TypeList);
|
ZNodekPointC VO_ZCLinkPoint(AR_TypeList);
|
||||||
|
|
||||||
VO_ZCLinkPoint.mp_CurrLink = AR_TypeList.mp_TailLink;
|
VO_ZCLinkPoint.mp_CurrLink = AR_TypeList.mp_TailLink;
|
||||||
VO_ZCLinkPoint.ml_CurrPos = AR_TypeList.ml_LinkSize;
|
VO_ZCLinkPoint.ml_CurrPos = AR_TypeList.ml_LinkSize;
|
||||||
|
|
||||||
return VO_ZCLinkPoint; /****************/
|
return VO_ZCLinkPoint; /****************/
|
||||||
}/*
|
}/*
|
||||||
static ZCLinkPointC MakeTailPoint(const TypeList& AR_TypeList)*/
|
static ZNodekPointC MakeTailPoint(const TypeList& AR_TypeList)*/
|
||||||
static ZCLinkPointC MakeTailPoint(const ZCLinkPoint& AR_TypeIter)
|
static ZNodekPointC MakeTailPoint(const ZCNodePoint& AR_TypeIter)
|
||||||
{
|
{
|
||||||
ZCLinkPointC VO_ZCLinkPoint(AR_TypeIter);
|
ZNodekPointC VO_ZCLinkPoint(AR_TypeIter);
|
||||||
|
|
||||||
VO_ZCLinkPoint.mp_CurrLink = VO_ZCLinkPoint.mr_TypeList.mp_TailLink;
|
VO_ZCLinkPoint.mp_CurrLink = VO_ZCLinkPoint.mr_TypeList.mp_TailLink;
|
||||||
VO_ZCLinkPoint.ml_CurrPos = VO_ZCLinkPoint.mr_TypeList.ml_LinkSize;
|
VO_ZCLinkPoint.ml_CurrPos = VO_ZCLinkPoint.mr_TypeList.ml_LinkSize;
|
||||||
|
|
||||||
return VO_ZCLinkPoint; /****************/
|
return VO_ZCLinkPoint; /****************/
|
||||||
}/*
|
}/*
|
||||||
static ZCLinkPointC MakeTailPoint(const ZCLinkPoint& AR_TypeIter)*/
|
static ZNodekPointC MakeTailPoint(const ZCNodePoint& AR_TypeIter)*/
|
||||||
static ZCLinkPointC MakeTailPoint(const ZCLinkPointC& AR_TypeIter)
|
static ZNodekPointC MakeTailPoint(const ZNodekPointC& AR_TypeIter)
|
||||||
{
|
{
|
||||||
ZCLinkPointC VO_ZCLinkPoint(AR_TypeIter);
|
ZNodekPointC VO_ZCLinkPoint(AR_TypeIter);
|
||||||
|
|
||||||
VO_ZCLinkPoint.mp_CurrLink = VO_ZCLinkPoint.mr_TypeList.mp_TailLink;
|
VO_ZCLinkPoint.mp_CurrLink = VO_ZCLinkPoint.mr_TypeList.mp_TailLink;
|
||||||
VO_ZCLinkPoint.ml_CurrPos = VO_ZCLinkPoint.mr_TypeList.ml_LinkSize;
|
VO_ZCLinkPoint.ml_CurrPos = VO_ZCLinkPoint.mr_TypeList.ml_LinkSize;
|
||||||
|
|
||||||
return VO_ZCLinkPoint; /****************/
|
return VO_ZCLinkPoint; /****************/
|
||||||
}/*
|
}/*
|
||||||
static ZCLinkPointC MakeTailPoint(const ZCLinkPointC& AR_TypeIter)*/
|
static ZNodekPointC MakeTailPoint(const ZNodekPointC& AR_TypeIter)*/
|
||||||
|
|
||||||
public :
|
public :
|
||||||
|
|
||||||
@ -1174,7 +1176,7 @@ namespace ZNsMain
|
|||||||
bool IsEmpty() const{return mr_CurrList.size()<1;}
|
bool IsEmpty() const{return mr_CurrList.size()<1;}
|
||||||
|
|
||||||
|
|
||||||
ZCLinkPointC& operator= (const ZCLinkPointC& rhs){ return *this; }
|
ZNodekPointC& operator= (const ZNodekPointC& rhs){ return *this; }
|
||||||
|
|
||||||
|
|
||||||
TypeDataC& operator*() const{return **mp_CurrLink;}
|
TypeDataC& operator*() const{return **mp_CurrLink;}
|
||||||
@ -1182,17 +1184,17 @@ namespace ZNsMain
|
|||||||
operator TypeLinkC& () const{return *mp_CurrLink;}
|
operator TypeLinkC& () const{return *mp_CurrLink;}
|
||||||
|
|
||||||
|
|
||||||
bool operator == (const ZCLinkPointC& rhs) const
|
bool operator == (const ZNodekPointC& rhs) const
|
||||||
{ return ml_CurrPos == rhs.ml_CurrPos; }
|
{ return ml_CurrPos == rhs.ml_CurrPos; }
|
||||||
bool operator != (const ZCLinkPointC& rhs) const
|
bool operator != (const ZNodekPointC& rhs) const
|
||||||
{ return ml_CurrPos != rhs.ml_CurrPos; }
|
{ return ml_CurrPos != rhs.ml_CurrPos; }
|
||||||
bool operator > (const ZCLinkPointC& rhs) const
|
bool operator > (const ZNodekPointC& rhs) const
|
||||||
{ return ml_CurrPos > rhs.ml_CurrPos; }
|
{ return ml_CurrPos > rhs.ml_CurrPos; }
|
||||||
bool operator >= (const ZCLinkPointC& rhs) const
|
bool operator >= (const ZNodekPointC& rhs) const
|
||||||
{ return ml_CurrPos >= rhs.ml_CurrPos; }
|
{ return ml_CurrPos >= rhs.ml_CurrPos; }
|
||||||
bool operator < (const ZCLinkPointC& rhs) const
|
bool operator < (const ZNodekPointC& rhs) const
|
||||||
{ return ml_CurrPos < rhs.ml_CurrPos; }
|
{ return ml_CurrPos < rhs.ml_CurrPos; }
|
||||||
bool operator <= (const ZCLinkPointC& rhs) const
|
bool operator <= (const ZNodekPointC& rhs) const
|
||||||
{ return ml_CurrPos <= rhs.ml_CurrPos; }
|
{ return ml_CurrPos <= rhs.ml_CurrPos; }
|
||||||
|
|
||||||
bool operator == (TypeSize AL_Size) const
|
bool operator == (TypeSize AL_Size) const
|
||||||
@ -1209,26 +1211,26 @@ namespace ZNsMain
|
|||||||
{ return ml_CurrPos <= AL_Size; }
|
{ return ml_CurrPos <= AL_Size; }
|
||||||
|
|
||||||
|
|
||||||
const ZCLinkPointC& operator++() const
|
const ZNodekPointC& operator++() const
|
||||||
{
|
{
|
||||||
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
||||||
|
|
||||||
++ml_CurrPos; return *this ;
|
++ml_CurrPos; return *this ;
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPointC& operator++() const*/
|
const ZNodekPointC& operator++() const*/
|
||||||
|
|
||||||
ZCLinkPointC operator++(int) const
|
ZNodekPointC operator++(int) const
|
||||||
{
|
{
|
||||||
ZCLinkPointC VO_NowPoint(*this);
|
ZNodekPointC VO_NowPoint(*this);
|
||||||
|
|
||||||
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
mp_CurrLink = mp_CurrLink->mp_NextLink;
|
||||||
|
|
||||||
++ml_CurrPos ; return VO_NowPoint ;
|
++ml_CurrPos ; return VO_NowPoint ;
|
||||||
}/*
|
}/*
|
||||||
ZCLinkPointC operator++(int) const*/
|
ZNodekPointC operator++(int) const*/
|
||||||
|
|
||||||
|
|
||||||
const ZCLinkPointC& operator+=(TypeSize AL_Distance) const
|
const ZNodekPointC& operator+=(TypeSize AL_Distance) const
|
||||||
{
|
{
|
||||||
if(IsEmpty()){return *this;}
|
if(IsEmpty()){return *this;}
|
||||||
|
|
||||||
@ -1237,11 +1239,11 @@ namespace ZNsMain
|
|||||||
|
|
||||||
return *this; /*:::::::::::::::::::::::::::*/
|
return *this; /*:::::::::::::::::::::::::::*/
|
||||||
}/*
|
}/*
|
||||||
const ZCLinkPointC& operator+=(TypeSize AL_Distance) const*/
|
const ZNodekPointC& operator+=(TypeSize AL_Distance) const*/
|
||||||
|
|
||||||
public:
|
public:
|
||||||
};/*
|
};/*
|
||||||
class ZCLinkPointC*/
|
class ZNodekPointC*/
|
||||||
|
|
||||||
|
|
||||||
public :
|
public :
|
||||||
@ -2410,10 +2412,10 @@ namespace ZNsMain
|
|||||||
{ return *ARR_Iterator; }
|
{ return *ARR_Iterator; }
|
||||||
|
|
||||||
|
|
||||||
iterator begin () { return ZCLinkPoint (*this); }
|
iterator begin () { return ZCNodePoint (*this); }
|
||||||
iteratorC begin () const{ return ZCLinkPointC(*this); }
|
iteratorC begin () const{ return ZNodekPointC(*this); }
|
||||||
iterator end () { return ZCLinkPoint ::MakeTailPoint(*this); }
|
iterator end () { return ZCNodePoint ::MakeTailPoint(*this); }
|
||||||
iteratorC end () const{ return ZCLinkPointC::MakeTailPoint(*this); }
|
iteratorC end () const{ return ZNodekPointC::MakeTailPoint(*this); }
|
||||||
|
|
||||||
|
|
||||||
ZCLink * HeadPtr() {return mp_HeadLink;}
|
ZCLink * HeadPtr() {return mp_HeadLink;}
|
||||||
|
Reference in New Issue
Block a user