commit 2025-09-03 13:56 edit ZCChars::Init() in ZCppMain/ZtCMainChars.H

This commit is contained in:
2025-09-03 13:57:05 +09:00
parent 6aa460f380
commit 6a3b673a19
3 changed files with 46 additions and 27 deletions

View File

@ -2966,12 +2966,15 @@ namespace ZNsMain
//////////////////////////////////////////////////////////////////*/
template<typename TType> class ZtCObjPtr
template
<typename TType, typename TTypeArg=const TType&>
class ZtCObjPtr
{
public :
typedef TType TypeData ;
typedef TType TypeData ;
typedef TTypeArg TypeArg ;
protected:
TypeData& mr_TypeData ;
TypeData& mr_TypeData;
public :
ZtCObjPtr(TType& AR_CData) : mr_TypeData(AR_CData){}
@ -2980,6 +2983,20 @@ namespace ZNsMain
TypeData& operator* (){return mr_TypeData;}
operator TypeData& (){return mr_TypeData;}
ZtCObjPtr& operator=(const ZtCObjPtr& rhs)
{
if(this==&rhs) return *this;
mr_TypeData = rhs.mr_TypeData; return *this;
}/*
ZtCObjPtr& operator=(const ZtCObjPtr& rhs)*/
ZtCObjPtr& operator=(TTypeArg AO_ArguData)
{
mr_TypeData = AO_ArguData; return *this;
}/*
ZtCObjPtr& operator=(TTypeArg AO_ArguData)*/
public :
};/*
template<typename TType> class ZtCObjPtr */
@ -2990,7 +3007,7 @@ namespace ZNsMain
■ object 를 heap 에 생성하고, 참조 카운트를 이용하여 관리.
-- 2014-07-20 04:49:00
///////////////////////////////////////////////////////////*/
template< typename TType, typename TAllocClass=ZCAllocClass

View File

@ -278,13 +278,29 @@ namespace ZNsMain
}/*
ZCChars(TypeCharC* APC_TypeChar, TypeLength AL_Length)*/
void Init(TypeCharC* APC_TypeChar=0, TypeLength AL_Length=0)
void Init()
{
mp_TypeChar = 0;
ml_TypeLength= 0;
}/*
void Init()*/
void Init(TypeCharC* APC_TypeChar)
{
mp_TypeChar = const_cast<TypeChar*> (APC_TypeChar);
ml_TypeLength= ZtCTypeChars::GetLength(mp_TypeChar );
}/*
void Init(TypeCharC* APC_TypeChar)*/
void Init(TypeCharC* APC_TypeChar, TypeLength AL_Length)
{
mp_TypeChar =const_cast
<TypeChar*>(APC_TypeChar) ;
ml_TypeLength=AL_Length ;
}/*
void Init(TypeCharC* APC_TypeChar=0, TypeLength AL_Length=0)*/
void Init(TypeCharC* APC_TypeChar, TypeLength AL_Length)*/
void InitData(TypeCharC* APC_TypeChar)
{
@ -298,23 +314,9 @@ namespace ZNsMain
}/*
void InitLength(TypeLength AL_Length)*/
TypeChar* data()
{
return mp_TypeChar;
}/*
TypeChar* data()*/
TypeCharC* data() const
{
return mp_TypeChar;
}/*
TypeCharC* data() const*/
TypeLength size() const
{
return ml_TypeLength;
}/*
TypeLength size() const*/
TypeChar* data() {return mp_TypeChar ;}
TypeCharC* data() const{return mp_TypeChar ;}
TypeLength size() const{return ml_TypeLength;}
ZCChars& operator+=(TypeLength AI_MovePos)
{

View File

@ -30,12 +30,12 @@ namespace ZNsMain
template< typename TType ,
typename TTypCArg = const TType&,
typename TTypArgu = const TType&,
typename TTypCAlloc = ZCAllocator ,
typename TTypCInit = ZCInit ,
typename TTypSize = ZTypLong ,
typename TMoveObj = ZNsMain::
ZtCMoveObj<TType, TTypCArg, true>
ZtCMoveObj<TType, TTypArgu, true>
>
class ZtCObjList //////////////////////////////
{
@ -44,7 +44,7 @@ namespace ZNsMain
public:
typedef TType Type ;
typedef TType TypeData ;
typedef TTypCArg TypeArg ;
typedef TTypArgu TypeArg ;
typedef TTypCAlloc TypeAlloc ;
//typedef TTypCInit TypeInit ;
typedef TTypSize TypeSize ;
@ -2160,7 +2160,7 @@ namespace ZNsMain
public:
};/*
template< typename TType ,
typename TTypCArg = const TType&,
typename TTypArgu = const TType&,
typename TTypCAlloc = ZCAllocator ,
typename TTypCInit = ZCInit ,
typename TTypSize = ZTypLong ,