При написании коротких вспомогательных функций я часто обнаруживаю, что хочу использовать переменное значение "значение" в качестве аргумента. Кажется, что Visual Studio компилирует это просто отлично и не имеет никаких жалоб, когда я это делаю:
public void MyMethod(int value, bool option, string message)
{
value = 1;
// More code...
}
Однако Visual Studio жалуется на следующее (как и ожидалось):
private int _myProperty;
public int MyProperty
{
get
{
return _myProperty;
}
set
{
int value = 0;
_myProperty = value;
}
}
Это заставляет меня думать, что "значение" рассматривается как ключевое слово (или нет) в зависимости от контекста. Я новичок в С#, и, насколько я знаю, я не видел ключевых слов контекста на других языках.
Вопрос: Всегда ли безопасно использовать "значение" в качестве имени переменной за пределами средства настройки свойств? Если нет, когда это можно сделать безопасно? И часто ли это считается плохой практикой?
Я был удивлен, что я не смог найти этот вопрос, который уже задал вопрос SO, и я подозреваю, что кто-то спросил его раньше. Однако его трудно найти, потому что в заголовке столько сообщений имеют "переменный" и "идентификатор". Мне не удалось найти информацию об этом в MSDN.
EDIT: Последний вопрос заключается в том, чтобы спросить, не существует ли часто или обычно. Он был изменен, чтобы отразить это.