>>255
ch3 = ch1 + ch2; がうまく動かないのはoperator+=()の戻り値の型をC2charからC2char&にしたら解決した。
似たようなことがまた起きるかもしれないしopreator=()の戻り値の型もC2char&に修正しておいた方がいいと思う。

いい忘れていたけど249と同じ理由でTCHARもただのCHARに修正してほしい。

今のところ、BCCでこんな警告が出る。
警告 W8037 c2char.h 96: const オブジェクトに対して 非 const 関数 'C2char::Compare(const char *)' が呼ばれた(関数 operator !=(const C2char &,const char *) )
これは宣言にconstを付けてvirtual int Compare( LPCSTR ob2 ) const;にすれば消えた。