TNB Library
クラス | 公開メンバ関数 | 静的公開メンバ関数 | 全メンバ一覧
CStrT< TYP > クラステンプレート

文字列管理テンプレート [詳解]

#include <TnbStr.h>

+ CStrT< TYP > の継承関係図

公開メンバ関数

iterator begin (void)
 [反復] 先頭iterator. [詳解]
 
const_iterator begin (void) const
 [反復] 先頭const_iterator. [詳解]
 
int Compare (const TYP *lpszSubject) const
 [確認] 文字列比較 [詳解]
 
int CompareByOption (const TYP *lpszSubject, DWORD dwCmpFlags) const
 [確認] 文字列比較(比較オプション指定) [詳解]
 
int CompareNoCase (const TYP *lpszSubject) const
 [確認] 文字列比較(大小区別無く比較) [詳解]
 
 CStrT (const char *lpText)
 代入コンストラクタ(ASCII/SJIS用) [詳解]
 
 CStrT (const CStrT &str)
 コピーコンストラクタ [詳解]
 
 CStrT (const WCHAR *lpText)
 代入コンストラクタ(UNICODE用) [詳解]
 
 CStrT (void)
 コンストラクタ [詳解]
 
int Delete (INDEX index, size_t iLen=1)
 [操作] 文字削除. [詳解]
 
void DeleteLast (void)
 [操作] 最終文字削除. [詳解]
 
void Empty (void)
 [削除] 空化 [詳解]
 
iterator end (void)
 [反復] 最後iterator. [詳解]
 
const_iterator end (void) const
 [反復] 最後const_iterator. [詳解]
 
INT_PTR Find (const TYP *lpsz, INDEX iFromIndex=0) const
 [確認] 検索. [詳解]
 
INT_PTR Find (TYP t, INDEX iFromIndex=0) const
 [確認] 検索. [詳解]
 
CStrT FindCut (TYP c, CStrT *_pstrRest=NULL) const
 [作成] 切り分け [詳解]
 
INT_PTR FindOneOf (const TYP *lpsz, INDEX iFromIndex=0) const
 [確認] 検索. [詳解]
 
void Format (const TYP *lpszFormat,...)
 [代入] 書式付き文字列代入. [詳解]
 
void FormatV (const TYP *lpszFormat, va_list V)
 [代入] 書式付き文字列代入. [詳解]
 
TYP GetAt (INDEX index) const
 [取得] 一文字取得 [詳解]
 
TYP * GetBuffer (size_t iLength=0)
 [操作] 書き込みバッファ要求. [詳解]
 
size_t GetLength (void) const
 [取得] 文字列長 [詳解]
 
void Insert (INDEX index, const TYP *lpText)
 [挿入] 文字列挿入 [詳解]
 
iterator insert (iterator ite, const TYP &t=TYP())
 [反復] 挿入 [詳解]
 
void InsertAt (INDEX index, TYP c)
 [挿入] 文字挿入 [詳解]
 
bool IsEmpty (void) const
 [確認] 空チェック [詳解]
 
bool IsEqual (const TYP *lpszSubject) const
 [確認] 文字列比較 [詳解]
 
bool IsEqualNoCase (const TYP *lpszSubject) const
 [確認] 文字列比較(大小区別無く比較) [詳解]
 
CStrT Left (size_t iSize) const
 [作成] 範囲取得. [詳解]
 
void MakeLower (void)
 [変換] 小文字化 [詳解]
 
void MakeUpper (void)
 [変換] 大文字化 [詳解]
 
CStrT Mid (INDEX iOffset, size_t iSize=INVALID_SIZE) const
 [作成] 範囲取得. [詳解]
 
 operator const TYP * (void) const
 [取得] 参照オペレータ. [詳解]
 
bool operator!= (const TYP *lpszSubject) const
 [確認] 文字列比較 [詳解]
 
CStrToperator+= (const char *lpText)
 [追加] 追加オペレータ(ASCII/SJIS用) [詳解]
 
CStrToperator+= (const WCHAR *lpText)
 [追加] 追加オペレータ(UNICODE用) [詳解]
 
CStrToperator+= (TYP t)
 [追加] 追加オペレータ. [詳解]
 
int operator- (const TYP *lpszSubject) const
 [確認] 文字列比較. [詳解]
 
bool operator< (const TYP *lpszSubject) const
 [確認] 文字列比較 [詳解]
 
bool operator<= (const TYP *lpszSubject) const
 [確認] 文字列比較 [詳解]
 
CStrToperator= (const char *lpText)
 [代入] 代入(ASCII/SJIS用) [詳解]
 
CStrToperator= (const CStrT &other)
 [代入] コピーオペレータ [詳解]
 
CStrToperator= (const WCHAR *lpText)
 [代入] 代入(UNICODE用) [詳解]
 
bool operator== (const TYP *lpszSubject) const
 [確認] 文字列比較 [詳解]
 
bool operator> (const TYP *lpszSubject) const
 [確認] 文字列比較 [詳解]
 
bool operator>= (const TYP *lpszSubject) const
 [確認] 文字列比較 [詳解]
 
void push_back (TYP t)
 [反復] 最後に追加 [詳解]
 
void push_front (TYP t)
 [反復] 先頭に挿入 [詳解]
 
const TYP * ReferBuffer (void) const
 [取得] バッファ参照. [詳解]
 
void ReleaseBuffer (void)
 [操作] 割り当てたバッファを開放. [詳解]
 
int Remove (TYP t)
 [処理] 文字削除. [詳解]
 
int Replace (const TYP *lpszOld, const TYP *lpszNew)
 [処理] 文字置換. [詳解]
 
int Replace (const TYP *lpszOld, TYP tNew)
 [処理] 文字置換. [詳解]
 
int Replace (TYP tOld, TYP tNew)
 [処理] 文字置換. [詳解]
 
INT_PTR ReverseFind (const TYP *lpsz) const
 [確認] 検索(後ろから) [詳解]
 
INT_PTR ReverseFind (TYP t) const
 [確認] 検索(後ろから) [詳解]
 
INT_PTR ReverseFindOneOf (const TYP *lpsz) const
 [確認] 検索(後ろから) [詳解]
 
CStrT Right (INT_PTR iSize) const
 [作成] 範囲取得. [詳解]
 
CStrT Sandwich (const TYP *lpszBefore, const TYP *lpszAfter) const
 [作成] 前後連結. [詳解]
 
void SetAt (INDEX index, TYP t)
 [操作] 一文字置き換え [詳解]
 
CStrTSetFromLeft (const TYP *lpText, size_t iLen)
 [代入] 文字数制限代入. [詳解]
 
double ToDouble (INDEX iOffset=0) const
 [取得] 数値(double)へ変換 [詳解]
 
DWORD ToDword (INDEX iOffset=0, int iBase=10) const
 [取得] 数値(DWORD)へ変換 [詳解]
 
int ToInt (INDEX iOffset=0, int iBase=10) const
 [取得] 数値(int)へ変換 [詳解]
 
LONGLONG ToLonglong (INDEX iOffset=0) const
 [取得] 数値(LONGLONG)へ変換 [詳解]
 
CStrTTrim (const TYP *lpsz)
 [処理] 両端から文字をトリム. [詳解]
 
CStrTTrim (TYP t=' ')
 [処理] 両端から文字をトリム. [詳解]
 
CStrTTrimLeft (const TYP *lpsz)
 [処理] 先頭から文字をトリム. [詳解]
 
CStrTTrimLeft (TYP t=' ')
 [処理] 先頭から文字をトリム. [詳解]
 
CStrTTrimRight (const TYP *lpsz)
 [処理] 末尾から文字をトリム. [詳解]
 
CStrTTrimRight (TYP t=' ')
 [処理] 末尾から文字をトリム. [詳解]
 
 ~CStrT (void)
 デストラクタ [詳解]
 

静的公開メンバ関数

static CStrT DwordToString (DWORD value)
 [設定] DWORD型文字列化. [詳解]
 
static CStrT Fmt (const TYP *lpszFormat,...)
 [作成] 書式付き文字列作成 [詳解]
 
template<typename ITE >
static CStrT FromIterator (ITE is, ITE ie=ITE(), size_t max=INVALID_SIZE)
 [代入] イテレータ代入. [詳解]
 
static CStrT FromWindowText (CWnd *pcWnd)
 [代入] WindowText代入. [詳解]
 
static CStrT FromWindowText (HWND hWnd)
 [代入] WindowText代入. [詳解]
 
static CStrT IntToString (int value)
 [設定] int型文字列化. [詳解]
 
static CStrT Lineup (const TYP *lpsz, int iSize)
 [作成] 指定文字を並べた文字列作成 [詳解]
 
static CStrT Lineup (TYP t, size_t length)
 [作成] 指定文字を並べた文字列作成 [詳解]
 
static CStrT ToHexString (DWORD value, size_t width)
 [設定] DWORD型 HEX 文字列化(0パディング付き). [詳解]
 

詳解

template<typename TYP>
class TNB::CStrT< TYP >

文字列管理テンプレート

複製、成形、保管が容易に出来る文字列管理クラスです。
覚え書き
IComparableT は実装していませんが、比較機能は持っています。
ISerializable は実装していませんが、シリアライズ機能は使用可能です。
begin() / end() による反復子取得が可能です。 SJIS を扱っている場合、2バイト文字が考慮されませんので注意してください。
注意
本テンプレートを直接使うケースは有りません。 CStr,CAscii,CUnicodeクラスが用意されています。
参照
CStr, CAscii, CUnicode
必要ファイル
TnbStr.h
日付
06/01/01 新規作成
06/05/12 代入系はいくつか
06/06/26 UNICODE系のバッファ確保数が文字数なのにByte数になっていたのを修正。
06/07/28 operator+ をメンバからグローバル関数へ変更。 LPCTSTR + CStr を可能にした。
06/08/13 イテレータを STL にあわせて、改修。
06/08/30 シリアライズ関係を追加。
07/06/29 Sandwich() の追加。
10/08/03 FindOneOf(), ReverseFindOneOf() の追加。構造整理。
12/03/07 IntToString(), DwordToString(), ToHexString() 追加。
15/03/16 ReferBuffer() を追加。
19/07/03 MakeUpper(), MakeLower() 新規。

TnbStr.h73 行目に定義があります。

構築子と解体子

◆ CStrT() [1/4]

CStrT ( void  )

コンストラクタ

TnbStr.h142 行目に定義があります。

◆ CStrT() [2/4]

CStrT ( const CStrT< TYP > &  str)

コピーコンストラクタ

引数
str他のインスタンス

TnbStr.h151 行目に定義があります。

◆ CStrT() [3/4]

CStrT ( const char *  lpText)

代入コンストラクタ(ASCII/SJIS用)

引数
lpText文字列

TnbStr.h168 行目に定義があります。

◆ CStrT() [4/4]

CStrT ( const WCHAR *  lpText)

代入コンストラクタ(UNICODE用)

引数
lpText文字列

TnbStr.h184 行目に定義があります。

◆ ~CStrT()

~CStrT ( void  )

デストラクタ

TnbStr.h211 行目に定義があります。

関数詳解

◆ begin() [1/2]

iterator begin ( void  )

[反復] 先頭iterator.

先頭要素を指す反復子を取得

戻り値
iterator

TnbStr.h103 行目に定義があります。

◆ begin() [2/2]

const_iterator begin ( void  ) const

[反復] 先頭const_iterator.

先頭要素を指す反復子を取得

戻り値
const_iterator

TnbStr.h89 行目に定義があります。

◆ Compare()

int Compare ( const TYP *  lpszSubject) const

[確認] 文字列比較

引数
lpszSubject比較対照文字列
戻り値
自分は lpszSubjectと同じ
1以上自分は lpszSubject より大きい
0未満自分は lpszSubject より小さい

TnbStr.h658 行目に定義があります。

◆ CompareByOption()

int CompareByOption ( const TYP *  lpszSubject,
DWORD  dwCmpFlags 
) const

[確認] 文字列比較(比較オプション指定)

引数
lpszSubject比較対照文字列
dwCmpFlags比較オプション(以下の値の論理和)
NORM_IGNORECASE 大文字/小文字を区別しない
NORM_IGNOREKANATYPE ひらがな/カタカナを区別しない
NORM_IGNORENONSPACE 場所を取らない文字を区別しない
NORM_IGNORESYMBOLS 記号を無視する
NORM_IGNOREWIDTH 1バイト文字とそれと同じ2バイト文字を区別しない
SORT_STRINGSORT 句読点を記号として扱う
戻り値
自分は lpszSubjectと同じ
1以上自分は lpszSubject より大きい
0未満自分は lpszSubject より小さい

TnbStr.h697 行目に定義があります。

◆ CompareNoCase()

int CompareNoCase ( const TYP *  lpszSubject) const

[確認] 文字列比較(大小区別無く比較)

引数
lpszSubject比較対照文字列
戻り値
自分は lpszSubjectと同じ
1以上自分は lpszSubject より大きい
0未満自分は lpszSubject より小さい

TnbStr.h678 行目に定義があります。

◆ Delete()

int Delete ( INDEX  index,
size_t  iLen = 1 
)

[操作] 文字削除.

覚え書き
リードバイト(文字コードの一バイト目)を指定すると、続くトレイルバイトも削除されます。
引数
index削除するインデックス
iLen削除する文字数(長さを超えている場合、指定インデックス以下がすべて削除されます)
戻り値
0削除していない
1以上削除した文字数。ASCII/SJISの場合、iLen と同じ値になるとは限りません。

TnbStr.h452 行目に定義があります。

◆ DeleteLast()

void DeleteLast ( void  )

[操作] 最終文字削除.

覚え書き
一文字削ります。

TnbStr.h487 行目に定義があります。

◆ DwordToString()

static CStrT DwordToString ( DWORD  value)
static

[設定] DWORD型文字列化.

指定の DWORD 型の数値を文字列に変換します。

引数
valueDWORD型数値.
戻り値
書式化した文字数

TnbStr.h1174 行目に定義があります。

◆ Empty()

void Empty ( void  )

[削除] 空化

TnbStr.h197 行目に定義があります。

◆ end() [1/2]

iterator end ( void  )

[反復] 最後iterator.

最後要素の次を指す反復子を取得

戻り値
iterator

TnbStr.h110 行目に定義があります。

◆ end() [2/2]

const_iterator end ( void  ) const

[反復] 最後const_iterator.

最後要素の次を指す反復子を取得

戻り値
const_iterator

TnbStr.h96 行目に定義があります。

◆ Find() [1/2]

INT_PTR Find ( const TYP *  lpsz,
INDEX  iFromIndex = 0 
) const

[確認] 検索.

引数
lpsz検索する文字列
iFromIndex検索を開始するインデックス。省略すると頭からになります。
戻り値
-1未発見
0以上発見インデックス

TnbStr.h552 行目に定義があります。

◆ Find() [2/2]

INT_PTR Find ( TYP  t,
INDEX  iFromIndex = 0 
) const

[確認] 検索.

引数
t検索する文字
iFromIndex検索を開始するインデックス。省略すると頭からになります。
戻り値
-1未発見
0以上発見インデックス

TnbStr.h540 行目に定義があります。

◆ FindCut()

CStrT FindCut ( TYP  c,
CStrT< TYP > *  _pstrRest = NULL 
) const

[作成] 切り分け

覚え書き
指定セパレータ文字の前後の文字列を作成します。ない場合、文字列がそのままコピーされます。
引数
[in]cセパレータ文字
[out]_pstrRestセパレータ文字の後の文字列が格納されます。
戻り値
セパレータ文字前までの文字列

TnbStr.h1122 行目に定義があります。

◆ FindOneOf()

INT_PTR FindOneOf ( const TYP *  lpsz,
INDEX  iFromIndex = 0 
) const

[確認] 検索.

引数
lpsz検索する文字セット
iFromIndex検索を開始するインデックス。省略すると頭からになります。
戻り値
-1未発見
0以上発見インデックス

TnbStr.h564 行目に定義があります。

◆ Fmt()

static CStrT Fmt ( const TYP *  lpszFormat,
  ... 
)
static

[作成] 書式付き文字列作成

引数
lpszFormat書式指定文字列
...省略可能な引数
戻り値
文字列

TnbStr.h1206 行目に定義があります。

◆ Format()

void Format ( const TYP *  lpszFormat,
  ... 
)

[代入] 書式付き文字列代入.

引数
lpszFormat書式指定文字列
...省略可能な引数

TnbStr.h359 行目に定義があります。

◆ FormatV()

void FormatV ( const TYP *  lpszFormat,
va_list  V 
)

[代入] 書式付き文字列代入.

使用例
void Log(LPCTSTR lpszFormat, ...)
{
CStr s;
va_list va;
va_start(va, lpszFormat);
s.FormatV(lpszFormat, va);
va_end(va);
::OutputDebugString(s);
}
TNB::CStrT< TCHAR > CStr
文字列クラス
Definition: TnbStr.h:1785
引数
lpszFormat書式指定文字列
VVA-LIST

TnbStr.h349 行目に定義があります。

◆ FromIterator()

static CStrT FromIterator ( ITE  is,
ITE  ie = ITE(),
size_t  max = INVALID_SIZE 
)
static

[代入] イテレータ代入.

イテレータ指定で代入します。番兵イテレータか ¥0か max文字数を代入し文字列にします。

引数
is開始イテレータ。
ie番兵イテレータ。
max最大文字数
戻り値
文字列

TnbStr.h1272 行目に定義があります。

◆ FromWindowText() [1/2]

static CStrT FromWindowText ( CWnd pcWnd)
static

[代入] WindowText代入.

指定のWindowのテキストが代入されます。

引数
pcWndウィンドウ
戻り値
文字列

TnbStr.h1309 行目に定義があります。

◆ FromWindowText() [2/2]

static CStrT FromWindowText ( HWND  hWnd)
static

[代入] WindowText代入.

指定のWindowのテキストが代入されます。

引数
hWndウィンドウハンドル
戻り値
文字列

TnbStr.h1288 行目に定義があります。

◆ GetAt()

TYP GetAt ( INDEX  index) const

[取得] 一文字取得

引数
indexインデックス。1文字目がインデックス0になります。
戻り値
インデックスの位置の文字。

TnbStr.h504 行目に定義があります。

◆ GetBuffer()

TYP * GetBuffer ( size_t  iLength = 0)

[操作] 書き込みバッファ要求.

必要サイズの書き込んでもよいバッファを返します。

覚え書き
使用後、必ず ReleaseBuffer() をコールしてください。
使用例

   CStr str;
   DWORD dwRc = GetModuleFileName(NULL, str.GetBuffer(MAX_PATH), MAX_PATH);     
   str.ReleaseBuffer();
   int p1 = str.ReverseFind('\');
 
引数
iLength必要な長さ。省略なら現在の長さ
戻り値
書き込み可能アドレス

TnbStr.h914 行目に定義があります。

◆ GetLength()

size_t GetLength ( void  ) const

[取得] 文字列長

戻り値
文字列長

TnbStr.h518 行目に定義があります。

◆ Insert()

void Insert ( INDEX  index,
const TYP *  lpText 
)

[挿入] 文字列挿入

引数
index挿入開始インデックス
lpText挿入文字列

TnbStr.h406 行目に定義があります。

◆ insert()

iterator insert ( iterator  ite,
const TYP &  t = TYP() 
)

[反復] 挿入

引数
ite挿入する位置の iterator
t要素
戻り値
挿入した場所の iterator

TnbStr.h118 行目に定義があります。

◆ InsertAt()

void InsertAt ( INDEX  index,
TYP  c 
)

[挿入] 文字挿入

引数
index挿入開始インデックス
c文字

TnbStr.h438 行目に定義があります。

◆ IntToString()

static CStrT IntToString ( int  value)
static

[設定] int型文字列化.

指定の int 型の数値を文字列に変換します。

引数
valueint型数値.
戻り値
書式化した文字数

TnbStr.h1158 行目に定義があります。

◆ IsEmpty()

bool IsEmpty ( void  ) const

[確認] 空チェック

戻り値
true空っぽ
falseデータ有り

TnbStr.h528 行目に定義があります。

◆ IsEqual()

bool IsEqual ( const TYP *  lpszSubject) const

[確認] 文字列比較

引数
lpszSubject比較対照文字列
戻り値
true同じ
false異なる

TnbStr.h669 行目に定義があります。

◆ IsEqualNoCase()

bool IsEqualNoCase ( const TYP *  lpszSubject) const

[確認] 文字列比較(大小区別無く比較)

引数
lpszSubject比較対照文字列
戻り値
true同じ
false異なる

TnbStr.h708 行目に定義があります。

◆ Left()

CStrT Left ( size_t  iSize) const

[作成] 範囲取得.

引数
iSize先頭から取り出す文字数。
戻り値
文字列

TnbStr.h801 行目に定義があります。

◆ Lineup() [1/2]

static CStrT Lineup ( const TYP *  lpsz,
int  iSize 
)
static

[作成] 指定文字を並べた文字列作成

引数
lpsz文字列
iSize文字数
戻り値
文字列

TnbStr.h1243 行目に定義があります。

◆ Lineup() [2/2]

static CStrT Lineup ( TYP  t,
size_t  length 
)
static

[作成] 指定文字を並べた文字列作成

引数
t文字
length文字数
戻り値
文字列

TnbStr.h1222 行目に定義があります。

◆ MakeLower()

void MakeLower ( void  )

[変換] 小文字化

TnbStr.h1143 行目に定義があります。

◆ MakeUpper()

void MakeUpper ( void  )

[変換] 大文字化

TnbStr.h1135 行目に定義があります。

◆ Mid()

CStrT Mid ( INDEX  iOffset,
size_t  iSize = INVALID_SIZE 
) const

[作成] 範囲取得.

覚え書き
2Byteコードを意識し、途中で分断されないようにします。 その為、iSize で指定したサイズより長い文字列が得られる可能性もあります。
引数
iOffset取り出し開始Offset
iSize取り出し文字数。省略すると最後まで取り出します。
戻り値
文字列

TnbStr.h766 行目に定義があります。

◆ operator const TYP *()

operator const TYP * ( void  ) const

[取得] 参照オペレータ.

戻り値
持っている文字列の先頭ポインタ

TnbStr.h371 行目に定義があります。

◆ operator!=()

bool operator!= ( const TYP *  lpszSubject) const

[確認] 文字列比較

引数
lpszSubject比較対照文字列
戻り値
true異なる
false同じ

TnbStr.h724 行目に定義があります。

◆ operator+=() [1/3]

CStrT & operator+= ( const char *  lpText)

[追加] 追加オペレータ(ASCII/SJIS用)

引数
lpText文字列
戻り値
自分の参照

TnbStr.h304 行目に定義があります。

◆ operator+=() [2/3]

CStrT & operator+= ( const WCHAR *  lpText)

[追加] 追加オペレータ(UNICODE用)

引数
lpText文字列
戻り値
自分の参照

TnbStr.h314 行目に定義があります。

◆ operator+=() [3/3]

CStrT & operator+= ( TYP  t)

[追加] 追加オペレータ.

覚え書き
バッファを共有していない場合で、格納できるなら再メモリ確保は行わない
引数
t文字
戻り値
自分の参照

TnbStr.h325 行目に定義があります。

◆ operator-()

int operator- ( const TYP *  lpszSubject) const

[確認] 文字列比較.

覚え書き
文字列同士の引き算をすると、比較結果が返ります。
引数
lpszSubject比較対照文字列
戻り値
自分は lpszSubjectと同じ
1以上自分は lpszSubject より大きい
0未満自分は lpszSubject より小さい

TnbStr.h646 行目に定義があります。

◆ operator<()

bool operator< ( const TYP *  lpszSubject) const

[確認] 文字列比較

引数
lpszSubject比較対照文字列
戻り値
true自分は lpszSubject より小さい
false

TnbStr.h748 行目に定義があります。

◆ operator<=()

bool operator<= ( const TYP *  lpszSubject) const

[確認] 文字列比較

引数
lpszSubject比較対照文字列
戻り値
true自分は lpszSubject と同じか小さい
false

TnbStr.h756 行目に定義があります。

◆ operator=() [1/3]

CStrT & operator= ( const char *  lpText)

[代入] 代入(ASCII/SJIS用)

引数
lpText文字列
戻り値
自分の参照

TnbStr.h240 行目に定義があります。

◆ operator=() [2/3]

CStrT & operator= ( const CStrT< TYP > &  other)

[代入] コピーオペレータ

引数
other他のインスタンス
戻り値
自分の参照

TnbStr.h221 行目に定義があります。

◆ operator=() [3/3]

CStrT & operator= ( const WCHAR *  lpText)

[代入] 代入(UNICODE用)

引数
lpText文字列
戻り値
自分の参照

TnbStr.h258 行目に定義があります。

◆ operator==()

bool operator== ( const TYP *  lpszSubject) const

[確認] 文字列比較

引数
lpszSubject比較対照文字列
戻り値
true同じ
false異なる

TnbStr.h716 行目に定義があります。

◆ operator>()

bool operator> ( const TYP *  lpszSubject) const

[確認] 文字列比較

引数
lpszSubject比較対照文字列
戻り値
true自分は lpszSubject より大きい
false

TnbStr.h732 行目に定義があります。

◆ operator>=()

bool operator>= ( const TYP *  lpszSubject) const

[確認] 文字列比較

引数
lpszSubject比較対照文字列
戻り値
true自分は lpszSubject と同じか大きい
false

TnbStr.h740 行目に定義があります。

◆ push_back()

void push_back ( TYP  t)

[反復] 最後に追加

引数
t要素

TnbStr.h135 行目に定義があります。

◆ push_front()

void push_front ( TYP  t)

[反復] 先頭に挿入

引数
t要素

TnbStr.h129 行目に定義があります。

◆ ReferBuffer()

const TYP * ReferBuffer ( void  ) const

[取得] バッファ参照.

戻り値
持っている文字列の先頭ポインタ

TnbStr.h380 行目に定義があります。

◆ ReleaseBuffer()

void ReleaseBuffer ( void  )

[操作] 割り当てたバッファを開放.

GetBuffer() で割り当てたバッファを開放し、文字列を本クラスに取り込みます。

覚え書き
GetBuffer()で取得した領域に書き込みが終わったら必ず ReleaseBuffer() してください。
参照
GetBuffer()

TnbStr.h954 行目に定義があります。

◆ Remove()

int Remove ( TYP  t)

[処理] 文字削除.

覚え書き
保持する情報に対し処理します。
引数
t削除する文字
戻り値
削除した数

TnbStr.h1108 行目に定義があります。

◆ Replace() [1/3]

int Replace ( const TYP *  lpszOld,
const TYP *  lpszNew 
)

[処理] 文字置換.

覚え書き
保持する情報に対し処理します。
引数
lpszOld置き換えられる文字列
lpszNew置き換える文字列
戻り値
置換した数

TnbStr.h1063 行目に定義があります。

◆ Replace() [2/3]

int Replace ( const TYP *  lpszOld,
TYP  tNew 
)

[処理] 文字置換.

覚え書き
保持する情報に対し処理します。
文字を省くことはできません。置換するだけです。
引数
lpszOld置き換えられる文字セット
tNew置き換える文字
戻り値
置換した数

TnbStr.h1051 行目に定義があります。

◆ Replace() [3/3]

int Replace ( TYP  tOld,
TYP  tNew 
)

[処理] 文字置換.

覚え書き
保持する情報に対し処理します。
文字を省くことはできません。置換するだけです。
引数
tOld置き換えられる文字
tNew置き換える文字
戻り値
置換した数

TnbStr.h1038 行目に定義があります。

◆ ReverseFind() [1/2]

INT_PTR ReverseFind ( const TYP *  lpsz) const

[確認] 検索(後ろから)

引数
lpsz検索する文字列
戻り値
-1未発見
0以上発見インデックス

TnbStr.h598 行目に定義があります。

◆ ReverseFind() [2/2]

INT_PTR ReverseFind ( TYP  t) const

[確認] 検索(後ろから)

引数
t検索する文字
戻り値
-1未発見
0以上発見インデックス

TnbStr.h575 行目に定義があります。

◆ ReverseFindOneOf()

INT_PTR ReverseFindOneOf ( const TYP *  lpsz) const

[確認] 検索(後ろから)

引数
lpsz検索する文字セット
戻り値
-1未発見
0以上発見インデックス

TnbStr.h621 行目に定義があります。

◆ Right()

CStrT Right ( INT_PTR  iSize) const

[作成] 範囲取得.

引数
iSize末尾から取り出す文字数。
戻り値
文字列

TnbStr.h811 行目に定義があります。

◆ Sandwich()

CStrT Sandwich ( const TYP *  lpszBefore,
const TYP *  lpszAfter 
) const

[作成] 前後連結.

引数
lpszBefore前につける文字列
lpszAfter後につける文字列
戻り値
文字列

TnbStr.h827 行目に定義があります。

◆ SetAt()

void SetAt ( INDEX  index,
TYP  t 
)

[操作] 一文字置き換え

引数
index置き換えインデックス
t置き換える文字

TnbStr.h390 行目に定義があります。

◆ SetFromLeft()

CStrT & SetFromLeft ( const TYP *  lpText,
size_t  iLen 
)

[代入] 文字数制限代入.

指定の文字列の左(先頭)から指定文字分だけ代入します。

引数
lpText文字列
iLen文字数
戻り値
自分の参照

TnbStr.h278 行目に定義があります。

◆ ToDouble()

double ToDouble ( INDEX  iOffset = 0) const

[取得] 数値(double)へ変換

引数
iOffset取り出し開始Offset
戻り値
変換した値

TnbStr.h874 行目に定義があります。

◆ ToDword()

DWORD ToDword ( INDEX  iOffset = 0,
int  iBase = 10 
) const

[取得] 数値(DWORD)へ変換

引数
iOffset取り出し開始Offset
iBaseベースになる値。普通 10 や 16 を指定。 0を指定すると、 lpsz の表記に従う(先頭が0x,0Xなら16進数,0なら8進数,それ以外は10進数)。
戻り値
変換した値

TnbStr.h859 行目に定義があります。

◆ ToHexString()

static CStrT ToHexString ( DWORD  value,
size_t  width 
)
static

[設定] DWORD型 HEX 文字列化(0パディング付き).

指定の int 型の数値を指定の文字数の文字列に変換します。

引数
valueDWORD 型数値.
width変換後の文字数
戻り値
書式化した文字数

TnbStr.h1191 行目に定義があります。

◆ ToInt()

int ToInt ( INDEX  iOffset = 0,
int  iBase = 10 
) const

[取得] 数値(int)へ変換

引数
iOffset取り出し開始Offset
iBaseベースになる値。普通 10 や 16 を指定。 0を指定すると、 lpsz の表記に従う(先頭が0x,0Xなら16進数,0なら8進数,それ以外は10進数)。
戻り値
変換した値

TnbStr.h842 行目に定義があります。

◆ ToLonglong()

LONGLONG ToLonglong ( INDEX  iOffset = 0) const

[取得] 数値(LONGLONG)へ変換

引数
iOffset取り出し開始Offset
戻り値
変換した値

TnbStr.h889 行目に定義があります。

◆ Trim() [1/2]

CStrT & Trim ( const TYP *  lpsz)

[処理] 両端から文字をトリム.

覚え書き
保持する情報に対し処理します。
引数
lpsz取り除く文字セット。
戻り値
自分の参照

TnbStr.h1024 行目に定義があります。

◆ Trim() [2/2]

CStrT & Trim ( TYP  t = ' ')

[処理] 両端から文字をトリム.

覚え書き
保持する情報に対し処理します。
引数
t取り除く文字。省略すると空白になります。
戻り値
自分の参照

TnbStr.h1012 行目に定義があります。

◆ TrimLeft() [1/2]

CStrT & TrimLeft ( const TYP *  lpsz)

[処理] 先頭から文字をトリム.

覚え書き
保持する情報に対し処理します。
引数
lpsz取り除く文字セット。
戻り値
自分の参照

TnbStr.h979 行目に定義があります。

◆ TrimLeft() [2/2]

CStrT & TrimLeft ( TYP  t = ' ')

[処理] 先頭から文字をトリム.

覚え書き
保持する情報に対し処理します。
引数
t取り除く文字。省略する空白になります。
戻り値
自分の参照

TnbStr.h968 行目に定義があります。

◆ TrimRight() [1/2]

CStrT & TrimRight ( const TYP *  lpsz)

[処理] 末尾から文字をトリム.

覚え書き
保持する情報に対し処理します。
引数
lpsz取り除く文字セット。
戻り値
自分の参照

TnbStr.h1001 行目に定義があります。

◆ TrimRight() [2/2]

CStrT & TrimRight ( TYP  t = ' ')

[処理] 末尾から文字をトリム.

覚え書き
保持する情報に対し処理します。
引数
t取り除く文字。省略すると空白になります。
戻り値
自分の参照

TnbStr.h990 行目に定義があります。