1. ホーム
  2. c#

[解決済み】C#の変数名における@の使い方・意味は?

2022-03-26 09:05:46

質問

C#では、変数名の先頭に'@'を付けることができることを発見しました。 C#のプロジェクトで、Javaで書かれたWebサービス(プロジェクトにWebリファレンスを追加しました)を使用していました。WSDLで定義されたインターフェースオブジェクトの1つに、"params"という名前のメンバー変数がありました。明らかに、これはC#では予約語なので、"params"という名前のメンバー変数を持つクラスを持つことはできません。生成されたプロキシオブジェクトには、次のようなプロパティが含まれていました。

public ArrayList @params {
    get { return this.paramsField; }
    set { this.paramsField = value; }
}

VS 2008 c#のドキュメントを検索してみましたが、それに関するものは見つかりませんでした。また、Googleで検索しても、有用な回答は得られませんでした。では、変数名/プロパティ名における'@'文字の正確な意味や使い方は何でしょうか?

どのように解決するのですか?

からそのまま C#言語仕様書 , 識別子(C#)について :

接頭辞 "@"を使用することで キーワードを識別子として使用することができます。 を使用すると、他のアプリケーションとのインターフェイスに便利です。 プログラミング言語 という文字があります。 は実際には の識別子を使用するため、識別子が 他の言語では通常の 識別子からプレフィックスを除いたものです。この プレフィックスが@の識別子を 逐語的識別子