2013-10-18 7 views
5

の前に@を持っている私は、 '@' の意味用量何のC#、パラメータ

C#で
int Func(Contact @group) 
{ 
    group.Name = ""; 
} 

の方法に会いましたか?

+1

「@」識別子おそらく – Rex

+0

などのキーワードの使用を可能に2行目は '@group.Name =" ";' –

答えて

7

キーワードをエスケープして、@classなどのパラメータを使用できるようにするために使用します。そうしないと構文エラーが発生します。 2.4.2 Identifiers

接頭辞「@」識別子としてのキーワードの使用を可能にし、他のプログラミング言語とのインタフェース時に便利です。

は、仕様書の該当部分を参照してください。文字@は実際には識別子の一部ではないため、識別子は他の言語では通常の識別子として、接頭辞なしで見られる場合があります。 @接頭辞を持つ識別子は、逐語識別子と呼ばれます。キーワードではない識別子に@接頭辞を使用することは許されますが、スタイルの問題として強く推奨されません。

2

私はそれがリテラル変数であると信じています。などintdouble、など

キーワードを変数名として使用することはできません、しかし、あなたは@記号でこのラウンドを取得することができます:

var int = 3; //compile error 

var @int = 3; //okay