commit 2025-10-09 02:24 Invalidate() => Invalid() : ZCppMain/ZtCStringEx.H

This commit is contained in:
2025-10-09 02:24:13 +09:00
parent 5a1dba2a38
commit f2a67017c8

View File

@ -960,7 +960,7 @@ namespace ZNsMain
{
// AL_NewSize>ml_UseLen 이면 추가되는 부분은 AC_FillChar 로 채운다.
if(AL_NewSize<=ml_UseLen) return Invalidate(AL_NewSize);
if(AL_NewSize<=ml_UseLen) return Invalid(AL_NewSize);
TypeLength VL_PrevSize=ml_UseLen; ReAllocKeep(AL_NewSize);
@ -1071,15 +1071,12 @@ namespace ZNsMain
/*#############################################################################*/
ZCStringBase& Invalidate(TypeLength AL_Index=0)
{
if(AL_Index>=0 && AL_Index<ml_UseLen) mpc_Data[ml_UseLen=AL_Index]=0; return *this;
}/*
ZCStringBase& Invalidate(TypeLength AL_Index=0)*/
ZCStringBase& Invalid(TypeLength AL_Index=0)
{
if(AL_Index>=0 && AL_Index<ml_UseLen) mpc_Data[ml_UseLen=AL_Index]=0; return *this;
if(AL_Index>=0 && AL_Index<ml_UseLen)
mpc_Data[ml_UseLen=AL_Index]=0;
return *this; /*+++++++++++++++++++*/
}/*
ZCStringBase& Invalid(TypeLength AL_Index=0)*/
@ -1107,7 +1104,7 @@ namespace ZNsMain
ZCStringBase& InvalidByForce(TypeLength AL_Index=0)
{
// Invalidate() 와의 차이에 주의
// Invalid() 와의 차이에 주의
const bool CB_IsOK = /*<<<<<<<<<<<<<<<<<*/
(
@ -1259,7 +1256,7 @@ namespace ZNsMain
if(rhs.ml_UseLen<1)
{
Invalidate(); return *this;
Invalid(); return *this;
}/*
/////////////////*/
@ -1287,13 +1284,13 @@ namespace ZNsMain
ZCStringBase& operator=(const ZCCharView& AR_View)
{
Invalidate(); return (*this)(AR_View.data(), AR_View.size());
Invalid(); return (*this)(AR_View.data(), AR_View.size());
}/*
ZCStringBase& operator=(const ZCCharView& AR_View)*/
ZCStringBase& operator=(int AI_Int ){Invalidate(); return (*this)(AI_Int );}
ZCStringBase& operator=(long AL_Long ){Invalidate(); return (*this)(AL_Long );}
ZCStringBase& operator=(double AD_Double){Invalidate(); return (*this)(AD_Double);}
ZCStringBase& operator=(int AI_Int ){Invalid(); return (*this)(AI_Int );}
ZCStringBase& operator=(long AL_Long ){Invalid(); return (*this)(AL_Long );}
ZCStringBase& operator=(double AD_Double){Invalid(); return (*this)(AD_Double);}
bool operator==(TypeCharC* APC_Data) const{return Minus(APC_Data)==0 ;}
@ -1489,7 +1486,7 @@ namespace ZNsMain
{
if(AL_Length<1)
{
Invalidate(); return *this;
Invalid(); return *this;
}
/*<<<<<<<<<<<*/
@ -1939,17 +1936,17 @@ namespace ZNsMain
ZCStringBase& ConvertLLong()
{
ZNsMain::ZTypLLong LLongValue=ZNsMain::ZfAtoLL(mpc_Data);
ZNsMain::ZTypLLong LLongValue = ZNsMain::ZfAtoLL(mpc_Data);
this->Invalidate(); return (*this)(LLongValue);
this->Invalid(); return (*this)(LLongValue);
}/*
ZCStringBase& ConvertLLong()*/
ZCStringBase& ConvertLong()
{
ZNsMain::ZTypLLong LongValue=ZNsMain::ZfAtoL(mpc_Data);
ZNsMain::ZTypLLong LongValue = ZNsMain::ZfAtoL(mpc_Data);
this->Invalidate(); return (*this)(LongValue);
this->Invalid(); return (*this)(LongValue);
}/*
ZCStringBase& ConvertLong()*/
@ -2512,8 +2509,8 @@ namespace ZNsMain
if(VL_SearchPos2-VL_SearchPos1-AL_SearchLen1<1)
{
return *this; // 찾은 두 문자열 사이에 문자가 없을 때
}/*
/////////////////////////////////////////////*/
}
/*:::::::::::::::::::::::::::::::::::::::::::*/
return ReplaceSection
(
@ -2537,8 +2534,8 @@ namespace ZNsMain
}
else if(AB_IsExactTwo==false && VL_SearchPos1>=0 && VL_SearchPos2<0)
{
if(AB_DoKeepSearch==true) Invalidate(VL_SearchPos1+AL_SearchLen1);
else Invalidate(VL_SearchPos1);
if(AB_DoKeepSearch) Invalid(VL_SearchPos1+AL_SearchLen1 );
else Invalid(VL_SearchPos1 );
}/*
else if(AB_IsExactTwo==false && VL_SearchPos1>=0 && VL_SearchPos2<0)*/
@ -4024,11 +4021,11 @@ namespace ZNsMain
}
else
{
((ZCString&)ARR_SaveList).Invalidate().append
((ZCString&)ARR_SaveList).Invalid().append
(
APC_OriginChar+VL_CopyStartPos, VL_Index-VL_CopyStartPos
) ;
/////////////////////////////////////////////
//////////////////////////////////////////
}/*
else*/
}
@ -4053,7 +4050,7 @@ namespace ZNsMain
{ ((ZCStringBase&)ARR_SaveList).
append( APC_OriginChar+VL_CopyStartPos, AL_OriginLen-VL_CopyStartPos ) ;
}else
{ ((ZCStringBase&)ARR_SaveList).Invalidate().
{ ((ZCStringBase&)ARR_SaveList).Invalid().
append( APC_OriginChar+VL_CopyStartPos, AL_OriginLen-VL_CopyStartPos ) ;
}
}/*
@ -4286,7 +4283,7 @@ namespace ZNsMain
if(VL_Index>VL_CopyStartPos)
{
VO_CStringTemp.Invalidate();
VO_CStringTemp.Invalid();
ARR_SaveList.push_back ////////////////////
(
@ -4319,7 +4316,7 @@ namespace ZNsMain
/* VL_PrevListSize==ARR_SaveList.size() 인 경우는, 분리
문자열을 찾을 수 없는 경우다. 이때는 아무짓도 하지 말자.
*/
VO_CStringTemp.Invalidate();
VO_CStringTemp.Invalid();
ARR_SaveList.push_back ////////
(
@ -4795,7 +4792,7 @@ namespace ZNsMain
if(VL_CopyPos<VL_StartPos)
{
VO_CStringTemp.Invalidate();
VO_CStringTemp.Invalid();
ARR_SaveList.push_back
(
@ -4821,7 +4818,7 @@ namespace ZNsMain
if(VL_CopyPos<AL_OriginLen)
{
VO_CStringTemp.Invalidate();
VO_CStringTemp.Invalid();
ARR_SaveList.push_back
(
@ -4910,19 +4907,26 @@ namespace ZNsMain
if(AB_DoIncludeSearch==true)
{
((ZCStringBase&)ARR_SaveList).Invalidate().append(
APC_OriginChar+VL_Pos1 , VL_Pos2-VL_Pos1+AL_Search2Len) ;
((ZCStringBase&)ARR_SaveList).Invalid().append
(
APC_OriginChar+VL_Pos1, VL_Pos2-VL_Pos1+AL_Search2Len
) ;
/*::::::::::::::::::::::::::::::::::::::::::*/
}
else if(VL_Pos2>VL_Pos1+AL_Search1Len) // AB_DoIncludeSearch==false
{
((ZCStringBase&)ARR_SaveList).Invalidate().append(
APC_OriginChar+VL_Pos1+AL_Search1Len, VL_Pos2-VL_Pos1-AL_Search1Len) ;
((ZCStringBase&)ARR_SaveList).Invalid().append
(
APC_OriginChar + VL_Pos1+AL_Search1Len,
VL_Pos2-VL_Pos1- AL_Search1Len
) ;
/*::::::::::::::::::::::::::::::::::::::::::*/
// APC_Search1Char 와 APC_Search2Char 사이에 문자열이 하나 이상 있어야 한다.
}/*
else if(VL_Pos2>VL_Pos1+AL_Search1Len) // AB_DoIncludeSearch==false*/
VL_Pos1=VL_Pos2+AL_Search2Len;
VL_Pos1 = VL_Pos2+AL_Search2Len;
}/*
while ( //////////////////////////////////////////////
( VL_Pos1 = FindPos
@ -5059,13 +5063,20 @@ namespace ZNsMain
if(AB_DoIncludeSearch==true)
{
((ZCString&)ARR_SaveList).Invalidate().append(
APC_OriginChar+VL_Pos1 , VL_Pos2-VL_Pos1+AL_Search2Len) ;
((ZCString&)ARR_SaveList).Invalid().append
(
APC_OriginChar+VL_Pos1, VL_Pos2-VL_Pos1+AL_Search2Len
) ;
/*::::::::::::::::::::::::::::::::::::::*/
}
else if(VL_Pos2>VL_Pos1+AL_Search1Len) // AB_DoIncludeSearch==false
{
((ZCString&)ARR_SaveList).Invalidate().append(
APC_OriginChar+VL_Pos1+AL_Search1Len, VL_Pos2-VL_Pos1-AL_Search1Len) ;
((ZCString&)ARR_SaveList).Invalid().append
(
APC_OriginChar + VL_Pos1+AL_Search1Len,
VL_Pos2-VL_Pos1- AL_Search1Len
) ;
/*::::::::::::::::::::::::::::::::::::::*/
// APC_Search1Char 와 APC_Search2Char 사이에 문자열이 하나 이상 있어야 한다.
}/*
@ -6386,7 +6397,7 @@ namespace ZNsMain
ZCStringBase& PadLeft(TypeLength AL_NewSize, TypeChar AC_FillChar=' ')
{
if(AL_NewSize<=ml_UseLen) return Invalidate(AL_NewSize);
if(AL_NewSize<=ml_UseLen) return Invalid(AL_NewSize);
return MoveRight(AL_NewSize-ml_UseLen, AC_FillChar);
}/*
@ -6395,7 +6406,7 @@ namespace ZNsMain
ZCStringBase& PadRight(TypeLength AL_NewSize, TypeChar AC_FillChar=' ')
{
if(AL_NewSize<=ml_UseLen)
{ return Invalidate(AL_NewSize); }
{ return Invalid(AL_NewSize); }
this->ReAllocKeep(AL_NewSize);
@ -6835,7 +6846,7 @@ namespace ZNsMain
if(AL_StartPos<0)
return *this; // 확장자 구분표시 '.' 이 없을 경우
else
return Invalidate(AL_StartPos);
return Invalid(AL_StartPos);
//else
}/*
ZCStringBase& MinusExt()*/