c++ builder > AnsiString をUnicodeStringに変えてはまった


動作確認
C++ Builder XE4

ソフトの修正の中でよけいなことをやってはまった話。

AnsiString xxx = ...

という宣言で処理していたのを、以下のようにした。

String xxx = ...

その変数xxxについては、そのLengthにかかわる処理にマジックナンバーが入っていたため、関連処理が動かなくなった。

そもそもAnsiString型から変更したのが間違いだったかもしれない。

AnsiString型、UnicodeString型混在を避ける場合は、関連処理をテストできるようにした上で修正した方がいいだろう。

VCSで履歴があったので10分程度でわかったが、VCSを使ってなかったらかなりはまったかもしれない。