Используйте длинное зарезервированное слово как имя переменной в С#
немного необычный... но мне было интересно, знает ли кто-нибудь, как я могу объявить зарезервированное слово как переменную. У меня есть следующий код, но мне не нравится использование длинного имени переменной. Я знаю, что могу переименовать его, но, чтобы узнать, как это сделать, я хотел бы знать, возможно ли это.
private string lat;
private string long;
public string Lat
{
get
{
return lat;
}
}
public string Long
{
get
{
return long;
}
}
Ответы
Ответ 1
Да, вы можете, если хотите:
private string @long;
Фактическое имя переменной (как указано отражением и т.д.) - это просто long
; знак @
сообщает компилятору игнорировать тот факт, что это также ключевое слово.
Я бы очень советовал против этого, однако.
Ответ 2
Как уже упоминалось, вы можете избежать зарезервированного слова с помощью "@".
В вашем примере вам действительно не нужно, я бы написал свойство следующим образом:
private string _long;
public string Long
{
get
{
return _long;
}
}
И подчеркивание и капитал L делают его компиляцией.
Но это своего рода традиция называть их Lat и Lon
Ответ 3
Да, вы можете. Использование символа @.
Это будет работать, например: private string @long;
Выполнение этого настоятельно не рекомендуется, но это возможно.
Ответ 4
Не тот ответ, который я знаю, поскольку я избегаю использования зарезервированных слов в качестве имен переменных, но если вы настаиваете, то, по крайней мере, используйте следующее:
private string lat;
private string @long;
public string Lat
{
get
{
return this.lat;
}
}
public string Long
{
get
{
return this.long;
}
}
Ответ 5
Я могу опоздать на эту вечеринку, но я подумал, что я бы выбрал другое место, где использование зарезервированного слова в качестве имени переменной - хорошая идея!
Я пишу веб-элемент управления, где я хочу, чтобы одно из свойств было "классом" аналогично тому, как другие элементы имеют свойство "class".
Итак, я сделаю свое свойство следующим: "public string @class {get {} set {}}"