commit 2025-10-05 21:00 add operator bool() in ZtCObjOpt : ZCppMain/ZMainHead.H
This commit is contained in:
@ -4512,7 +4512,8 @@ namespace ZNsMain
|
||||
ZtCObjOpt& operator=(const ZtCObjOpt& rhs)
|
||||
{ mp_TypeData=rhs.mp_TypeData; return *this; }
|
||||
|
||||
bool has_value() const{return mp_TypeData!=0;}
|
||||
operator bool () const{return mp_TypeData!=0;}
|
||||
bool has_value () const{return mp_TypeData!=0;}
|
||||
|
||||
TypeData& value() const{return *mp_TypeData ;}
|
||||
|
||||
|
@ -49,6 +49,7 @@ namespace ZNsMain
|
||||
ZCStrLinkOpt VO_StrLinkOpt = VO_ZCLinkStrLis.GetObjOpt(1);
|
||||
|
||||
cout<<"# VO_StrLinkOpt.has_value()="<<VO_StrLinkOpt.has_value()<<endl;
|
||||
cout<<"# VO_StrLinkOpt.bool() ="<<bool(VO_StrLinkOpt) <<endl;
|
||||
|
||||
VO_ZCLinkStrLis.AddTail()()=string("123");
|
||||
VO_ZCLinkStrLis.AddTail()()=string("ABC");
|
||||
@ -57,6 +58,7 @@ namespace ZNsMain
|
||||
VO_StrLinkOpt = VO_ZCLinkStrLis.GetObjOpt(1);
|
||||
|
||||
cout<<"# VO_StrLinkOpt.GetObjOpt(1) : has_value()="<<VO_StrLinkOpt.has_value()<<endl;
|
||||
cout<<"# VO_StrLinkOpt.GetObjOpt(1) : bool ()="<<bool(VO_StrLinkOpt) <<endl;
|
||||
|
||||
if(VO_StrLinkOpt.has_value())
|
||||
cout<<"# value by VO_StrLinkOpt : "<<VO_StrLinkOpt.value()<<endl;
|
||||
@ -64,6 +66,7 @@ namespace ZNsMain
|
||||
VO_StrLinkOpt = VO_ZCLinkStrLis.GetTailOpt();
|
||||
|
||||
cout<<"# VO_StrLinkOpt.GetTailOpt() : has_value()="<<VO_StrLinkOpt.has_value()<<endl;
|
||||
cout<<"# VO_StrLinkOpt.GetTailOpt() : bool ()="<<bool(VO_StrLinkOpt) <<endl;
|
||||
|
||||
if(VO_StrLinkOpt.has_value())
|
||||
cout<<"# value by VO_StrLinkOpt : "<<VO_StrLinkOpt.value()<<endl;
|
||||
|
Reference in New Issue
Block a user