次の方法で共有


CFixedStringT クラス

更新 : 2007 年 11 月

このクラスは、固定された文字バッファを持つ文字列オブジェクトを表します。

template< class StringType, int t_nChars >  
class CFixedStringT : private CFixedStringMgr, public StringType

パラメータ

  • StringType
    ここで指定した型が、固定された文字列オブジェクトの基本クラスとして使用されます。CStringT ベースの任意の文字列型を指定できます。たとえば、CStringCStringACStringW などを指定できます。

  • t_nChars
    バッファ内に格納されている文字の数。

解説

このクラスは、CStringT をベースにしているカスタム文字列クラスの一例です。CFixedStringTCStringT は互いによく似ていますが、実装は異なります。CFixedStringTCStringT の主な違いは次のとおりです。

  • CFixedStringT オブジェクトの一部として、最初の文字バッファが割り当てられます。この文字バッファのサイズは t_nChars で指定した値になります。この割り当てによって、CFixedString オブジェクトは連続したメモリ チャンクを使用できるようになり、安定したパフォーマンスが得られます。ただし、CFixedStringT オブジェクトのサイズが t_nChars の値を超えると、バッファは動的に割り当てられます。

  • CFixedStringT オブジェクトの文字バッファのサイズは、常に一定 (t_nChars の値) です。CStringT オブジェクトのバッファ サイズには、特に制限はありません。

  • CFixedStringT のメモリ マネージャはカスタマイズされていて、複数の CFixedStringT オブジェクト間での CStringData オブジェクトの共有はできません。CStringT オブジェクトには、このような制約はありません。

CFixedStringT のカスタマイズ、および文字列オブジェクトのメモリ管理の詳細については、「メモリ管理と CStringT」を参照してください。

必要条件

ヘッダー : cstringt.h

参照

参照

CStringT クラス

階層図

その他の技術情報

CFixedStringT のメンバ

ATL/MFC の共有クラス