Compare commits

...

3 Commits

Author SHA1 Message Date
/* User with id == 0 is a fake user from git author */ sauron
9052a06bd5 commit 2025-10-10 14:49 add ZCLink::TypeLink : ZCppMain/ZMainHead.H 2025-10-10 14:49:25 +09:00
/* User with id == 0 is a fake user from git author */ sauron
8924a85c85 commit 2025-10-10 14:45 edit a bit : ZCppMain/ZMainHead.H 2025-10-10 14:48:25 +09:00
/* User with id == 0 is a fake user from git author */ sauron
93080593d1 commit 2025-10-10 14:24 add TypeData& operator()() in ZtCObjOpt : ZCppMain/ZMainHead.H 2025-10-10 14:24:34 +09:00
7 changed files with 69 additions and 34 deletions

View File

@ -4698,10 +4698,12 @@ namespace ZNsMain
TypeData* operator->(){return mp_TypeData;}
TypeData& operator* (){return *mp_TypeData;}
TypeData& operator()(){return *mp_TypeData;}
operator TypeData& (){return *mp_TypeData;}
const TypeData* operator->() const{return mp_TypeData;}
const TypeData& operator* () const{return *mp_TypeData;}
const TypeData& operator()() const{return *mp_TypeData;}
operator const TypeData& () const{return *mp_TypeData;}
ZtCObjOpt& operator=(const ZtCObjOpt& rhs)
@ -5659,6 +5661,7 @@ namespace ZNsMain
typedef TTypeAlloc TypeAlloc ;
typedef TTypSize TypeSize ;
typedef TMoveObj TypeMoveObj ;
typedef ZCLink TypeLink ;
typedef ZCLink* IterEasy ; // 가장 대표적으로 쓰일 수 있는 반복자.
typedef ZCLink* iterator ;
public:
@ -5766,14 +5769,16 @@ namespace ZNsMain
const ZCLink* GetNextPrevPtr(TypeSize AL_FarNum) const*/
operator TypeData& (){return mo_DataObjt;}
operator TypeData (){return mo_DataObjt;}
TypeData& GetData (){return mo_DataObjt;}
TypeData& operator*(){return mo_DataObjt;}
operator TypeData& (){return mo_DataObjt;}
operator TypeData (){return mo_DataObjt;}
TypeData& GetData (){return mo_DataObjt;}
TypeData& operator* (){return mo_DataObjt;}
TypeData& operator()(){return mo_DataObjt;}
operator const TypeData& () const{return mo_DataObjt;}
const TypeData& GetData () const{return mo_DataObjt;}
const TypeData& operator*() const{return mo_DataObjt;}
operator const TypeData& () const{return mo_DataObjt;}
const TypeData& GetData () const{return mo_DataObjt;}
const TypeData& operator* () const{return mo_DataObjt;}
const TypeData& operator()() const{return mo_DataObjt;}
ZCLink& operator+(TypeSize AL_Distance)

View File

@ -198,8 +198,13 @@ namespace ZNsMain
ZtCLink& operator=(TypeBase& AR_CBase)*/
/***/ TypeData& operator()() { return *static_cast< TypeData*>(this); }
const TypeData& operator()() const{ return *static_cast<const TypeData*>(this); }
TypeData& operator* () { return *static_cast<TypeData*>(this); }
TypeData& operator()() { return *static_cast<TypeData*>(this); }
const TypeData& operator* () const
{ return *static_cast<const TypeData*>(this); }
const TypeData& operator()() const
{ return *static_cast<const TypeData*>(this); }
ZtCLink* GetNextPtr(){return mp_NextLink;}
@ -409,8 +414,13 @@ namespace ZNsMain
TypeThis& operator=(TypeBase& AR_CBase)*/
/***/ TypeBase& operator()() { return *static_cast< TypeBase*>(this); }
const TypeBase& operator()() const{ return *static_cast<const TypeBase*>(this); }
TypeBase& operator* (){ return *static_cast<TypeBase*>(this); }
TypeBase& operator()(){ return *static_cast<TypeBase*>(this); }
const TypeBase& operator* () const
{ return *static_cast<const TypeBase*>(this); }
const TypeBase& operator()() const
{ return *static_cast<const TypeBase*>(this); }
ZtCLink* GetNextPtr(){return mp_NextLink;}
@ -645,9 +655,13 @@ namespace ZNsMain
TypeThis& operator=(const TypeThis& rhs)*/
/***/ TypeData& operator()() { return GetChildObj(); }
TypeData& operator* () { return GetChildObj(); }
TypeData& operator()() { return GetChildObj(); }
const TypeData& operator* () const{ return GetChildObj(); }
const TypeData& operator()() const{ return GetChildObj(); }
ZtCLink* GetNextPtr(){return mp_NextLink;}
ZtCLink* GetPrevPtr(){return mp_PrevLink;}
@ -838,7 +852,10 @@ namespace ZNsMain
TypeThis& operator=(const TypeThis& rhs)*/
/***/ TypeThis& operator()() { return *this; }
TypeThis& operator* (){ return *this; }
TypeThis& operator()(){ return *this; }
const TypeThis& operator* () const{ return *this; }
const TypeThis& operator()() const{ return *this; }
@ -991,6 +1008,7 @@ namespace ZNsMain
public :
typedef TCLink ZCLink ;
typedef TCLink TypeData;
typedef TCLink TypeLink;
typedef TTypSize TypeSize;
public :
typedef typename TCLink::TypeMain TypeMain;
@ -2063,6 +2081,7 @@ namespace ZNsMain
public :
typedef TCLink ZCLink ;
typedef TCLink TypeData;
typedef TCLink TypeLink;
typedef TTypSize TypeSize;
public :
typedef typename TCLink::TypeMain TypeMain;

View File

@ -881,14 +881,16 @@ namespace ZNsMain
ZCLink& operator=(const ZCLink& rhs)*/
operator Type& (){return mo_DataObjt;}
operator Type (){return mo_DataObjt;}
Type& GetData (){return mo_DataObjt;}
Type& operator*(){return mo_DataObjt;}
operator Type& (){return mo_DataObjt;}
operator Type (){return mo_DataObjt;}
Type& GetData (){return mo_DataObjt;}
Type& operator* (){return mo_DataObjt;}
Type& operator()(){return mo_DataObjt;}
operator const Type& () const{return mo_DataObjt;}
const Type& GetData () const{return mo_DataObjt;}
const Type& operator*() const{return mo_DataObjt;}
operator const Type& () const{return mo_DataObjt;}
const Type& GetData () const{return mo_DataObjt;}
const Type& operator* () const{return mo_DataObjt;}
const Type& operator()() const{return mo_DataObjt;}
ZCLink* GetNextPrevPtr(TypeSize AL_FarNum) // AL_FarNum 은 0 이거나 음수일 수 있다.

View File

@ -872,17 +872,11 @@ namespace ZNsMain
const TType& GetData(TTypSize AL_FarNum) const*/
TType& operator*()
{
return mo_DataObjt;
}/*
TType& operator*()*/
TType& operator* (){return mo_DataObjt;}
TType& operator()(){return mo_DataObjt;}
const TType& operator*() const
{
return mo_DataObjt;
}/*
const TType& operator*() const*/
const TType& operator* () const{return mo_DataObjt;}
const TType& operator()() const{return mo_DataObjt;}
ZCLink* GetNextPtr(TTypSize AL_FarNum) // must AL_FarNum > 0

View File

@ -74,7 +74,11 @@ namespace ZNsMain
cout<<"# VO_StrLinkOpt.GetObjOpt(1) : bool ()="<<bool(VO_StrLinkOpt) <<endl;
if(VO_StrLinkOpt.has_value())
cout<<"# value by VO_StrLinkOpt : "<<VO_StrLinkOpt.value()<<endl;
{
cout<<"# value by VO_StrLinkOpt : "<<VO_StrLinkOpt.value()<<endl;
cout<<"# value by VO_StrLinkOpt() : "<<VO_StrLinkOpt() <<endl;
}/*
if(VO_StrLinkOpt.has_value())*/
VO_StrLinkOpt = VO_ZCLinkStrLis1.GetTailOpt();

View File

@ -130,7 +130,11 @@ namespace ZNsMain
cout<<"# VO_StrLinkOpt.GetObjOpt(1) : bool ()="<<bool(VO_StrLinkOpt) <<endl;
if(VO_StrLinkOpt.has_value())
cout<<"# value by VO_StrLinkOpt : "<<VO_StrLinkOpt.value()().GetData()<<endl;
{
cout<<"# value by VO_StrLinkOpt : "<<VO_StrLinkOpt.value()().GetData()<<endl;
cout<<"# value by VO_StrLinkOpt() : "<<VO_StrLinkOpt() ().GetData()<<endl;
}/*
if(VO_StrLinkOpt.has_value())*/
VO_StrLinkOpt = VO_ZCLinkStrLis1.GetTailOpt();
@ -138,7 +142,11 @@ namespace ZNsMain
cout<<"# VO_StrLinkOpt.GetTailOpt() : bool ()="<<bool(VO_StrLinkOpt) <<endl;
if(VO_StrLinkOpt.has_value())
cout<<"# value by VO_StrLinkOpt : "<<VO_StrLinkOpt.value()().GetData()<<endl;
{
cout<<"# value by VO_StrLinkOpt : "<<VO_StrLinkOpt.value()().GetData()<<endl;
cout<<"# value by VO_StrLinkOpt() : "<<VO_StrLinkOpt() ().GetData()<<endl;
}/*
if(VO_StrLinkOpt.has_value())*/
cout<<"+++++++++++++++++++++++++++++++++++++++++++++++"<<endl;

View File

@ -72,7 +72,10 @@ namespace ZNsMain
cout<<"# VO_StrLinkOpt.GetObjOpt(1) : bool ()="<<bool(VO_StrLinkOpt) <<endl;
if(VO_StrLinkOpt.has_value())
cout<<"# value by VO_StrLinkOpt : "<<VO_StrLinkOpt.value()<<endl;
{
cout<<"# value by VO_StrLinkOpt : "<<VO_StrLinkOpt.value()<<endl;
cout<<"# value by VO_StrLinkOpt() : "<<VO_StrLinkOpt() <<endl;
}
VO_StrLinkOpt = VO_ZCLinkStrLis1.GetTailOpt();