>>254
DelphiはコンポーネントやTStringListなんかがすべてSJISで統一されていて
WideStringで統一的にコーディングできないから。
なので毎回String<->WideStringの相互変換が発生して遅くなる。
例えば
var s: String;
function Foo(ws: WideString): WideString;
...
s := Foo(s);
とやるとString->WideString->Stringと変換されてしまう。
速度を気にしなければ自作のライブラリはすべてWideStringで統一するというのもありといえばあり。