[Delphi]文字列の暗黙的なキャスト警告を消す方法
トップページへ
※全てのDelphi(楽天市場で探す ・ amazonで探す)で動作する保証はありません。また、内容に関し管理人は全ての責任を負いかねます
サンプル ※説明に必要な部分しか記述していません。
procedure TForm1.Button1Click(Sender: TObject); //警告 文字列の暗黙的なキャスト を消す方法の一例 var Dest: array[0..255] of WideChar; w_str: String; begin //【A】 StrPCopy(Dest, PAnsiChar('AnsiChar')); //【A】の方法ではコンパイルまたは再構築した時にエラーにはならないものの //[DCC 警告] W1057 文字列の暗黙的なキャスト('AnsiChar' から 'string') //という警告文が表示されます。 //警告文が気になる場合は下の【B】の方法で警告を消すことができますが、【B】は一例であり方法は複数あると思われます。 //【B】 w_str := string(PAnsiChar('AnsiChar')); StrPCopy(Dest, w_str); end;
・string() については
http://docwiki.embarcadero.com/
をご覧下さい。
一部引用
コンパイラが、AnsiString(または AnsiChar)を、Unicode のなんらかの形式(UnicodeString または WideString)に暗黙的に変換しなければならないケースを検知した際に、この警告がでます。 この警告を避けるには、明示的に型キャストする必要があります