06/11/10 20:41:34 jEDzoqtR
何言ってるのかよくわからんが、違う。
char + charはint型を返す。そんなことじゃない。
0x81は正の整数で、(char)0x81は負の整数だ。
WindowsのVCはcharは符号付の型だからな。
でm_Log_Textはstring型で、at()の戻り値はchar型だ。つまり下の
>m_Log_Text.at(m_It)>=0x81
は必ずfalseになる。charは128以上を表せない。
よって、中途半端なマルチバイトが出来上がるわけだ。
これが表示されなかったり、生成が遅かったりすると、処理落ちしたように見える。
つまり、その式が遅いわけではない。
何がプロファイルとった、だよ。嘘付くな。取ってないだろ。