commit 2025-10-13 19:00 ZCLinkPoint => ZCNodePoint : ZCppMain/ZtCObjList.H

This commit is contained in:
2025-10-13 19:00:57 +09:00
parent 388b87377a
commit 7a3b57f135
4 changed files with 260 additions and 258 deletions

View File

@ -22,11 +22,11 @@ namespace ZNsMain
typedef TTypArg TypeArg ;
typedef TSize TypeSize ;
public:
class ZCDataPoint; class ZCDataPointC ;
class ZCNodePoint; class ZCDataPointC ;
public:
typedef TypeData* IterEasy ;
typedef TypeData* TypeNode ; // ZCLinkPoint::GetNode() 의 반환형.
typedef ZCDataPoint TypeIter ;
typedef ZCNodePoint TypeIter ;
typedef ZtCArray TypeThis ;
typedef const TypeThis TypeThisC ;
@ -36,12 +36,12 @@ namespace ZNsMain
typedef ZCDataPointC iteratorC ;
/**********************************************/
typedef ZCDataPoint iterator ;
typedef ZCNodePoint iterator ;
typedef ZCDataPointC const_iterator;
public:
class ZCDataPoint
class ZCNodePoint
{
private: mutable
TypeData* mp_Data ; mutable
@ -49,7 +49,7 @@ namespace ZNsMain
ZtCArray& mr_CArray;
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)
/*****************************************************************/
{
@ -57,21 +57,21 @@ namespace ZNsMain
mr_CArray=&AR_CArray;
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 ;
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 ;
ml_ElePos= (mr_CArray.size()>0 ? 1 : 0 );
}/*
ZCDataPoint(const ZCDataPoint& rhs)*/
ZCNodePoint(const ZCNodePoint& rhs)*/
TypeThis & GetMain() {return mr_CArray ;}
@ -88,30 +88,30 @@ namespace ZNsMain
TypeDataC& operator* () const{return *mp_Data;}
TypeDataC* operator->() const{return mp_Data;}
ZCDataPoint& operator++( ){++mp_Data; ++ml_ElePos; return *this;}
ZCDataPoint operator++(int){++mp_Data; ++ml_ElePos; return *this;}
ZCNodePoint& operator++( ){++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 ZCDataPoint operator++(int) const{++mp_Data; ++ml_ElePos; return *this;}
const ZCNodePoint& operator++( ) 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; }
bool operator != (const ZCDataPoint& rhs) const
bool operator != (const ZCNodePoint& rhs) const
{ return ml_ElePos != rhs.ml_ElePos; }
bool operator > (const ZCDataPoint& rhs) const
bool operator > (const ZCNodePoint& rhs) const
{ return ml_ElePos > rhs.ml_ElePos; }
bool operator >= (const ZCDataPoint& rhs) const
bool operator >= (const ZCNodePoint& rhs) const
{ return ml_ElePos >= rhs.ml_ElePos; }
bool operator < (const ZCDataPoint& rhs) const
bool operator < (const ZCNodePoint& rhs) const
{ return ml_ElePos < rhs.ml_ElePos; }
bool operator <= (const ZCDataPoint& rhs) const
bool operator <= (const ZCNodePoint& rhs) const
{ return ml_ElePos <= rhs.ml_ElePos; }
bool operator == (TypeSize AL_Size) const
@ -129,7 +129,7 @@ namespace ZNsMain
public:
};/*
class ZCDataPoint*/
class ZCNodePoint*/
class ZCDataPointC
@ -163,12 +163,12 @@ namespace ZNsMain
ml_ElePos=(mr_CArray.size()>0 ? 1 : 0 ) ;
}/*
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 ;
ml_ElePos=(mr_CArray.size()>0 ? 1 : 0 ) ;
}/*
ZCDataPointC(const ZCDataPoint & rhs)*/
ZCDataPointC(const ZCNodePoint & rhs)*/
TypeSize size () const{return mr_CArray.size();}
@ -469,8 +469,8 @@ namespace ZNsMain
Type& push_front(){return AddHead();}
Type& push_back (){return AddTail();}
/***/ ZCDataPoint begin() {return ZCDataPoint(*this);}
const ZCDataPoint begin() const{return ZCDataPoint(*this);}
/***/ ZCNodePoint begin() {return ZCNodePoint(*this);}
const ZCNodePoint begin() const{return ZCNodePoint(*this);}
template<typename TFunctor> void IterElement(TFunctor AO_Functor)