> 不便そうなところがあれば、早めにご指摘下さい。
class SAKURA_CORE_API CMemText{
  CMemory *m_pcmemData;  // UTF-8
  CMemory *m_pcmemData_sjis;  // SJIS 互換用バッファ
public:
  CMemText() : m_pcmemData(NULL) {};
  ~CMemText() {};
  void DetatchBuf( CMemory * );
  void DetatchBuf_sjis( CMemory * );
  char* GetPtr() const{ m_pcmemData.GetPtr(); }
  char* GetPtr_sjis() const{ m_pcmemData_sjis.GetPtr(); }
  static int GetSizeOfChar( const char *, const int, const int );
  static int GetSizeOfChar_sjis( const char *, const int, const int );
  bool IsValid() { return (m_pcmemData != NULL) }
  int LoadText( enumCodeType, const CMemory & );
  int LoadText_sjis( const char *, const int );
  int LoadText_jis( const char *, const int );
  int LoadText_eucjp( const char *, const int );
  int LoadText_uni( const char *, const int );
  int LoadText_utf8( const char *, const int );
  int LoadText_utf7( const char *, const int );
  int LoadText_unibe( const char *, const int );
  int ToAuto( enumCodeType, CMemory * );  /* 指定された文字コードで書き出し */
  int ToSJis( CMemory * ); /* Windows版 SJIS(CP-932) で書き出し */
  int ToJis( CMemory * ); /* Windows版 ISO-2022-JP(CP-5022x) で書き出し */
  int ToEuc( CMemory * ); /* Windows版 EUC-JP(CP-51932) で書き出し */
  int ToUnicode( CMemory * ); /* UTF-16 で書き出し */
  int ToUtf8( CMemory * ); /* UTF-8 で書き出し */
  int ToUtf7( CMemory * ); /* UTF-7 で書き出し */
  int ToUnicodeBe( CMemory * ); /* UTF-16 Big-Endian で書き出し */
  void ToZenkaku( int, int ); /* 半角→全角 */
  void ToHankaku( int nMode ); /* 全角→半角 */
  void ToLower( void ); /* 小文字 */
  void ToUpper( void ); /* 大文字 */
};