Почему C# не был разработан с 'константой' для переменных и методов? [дубликат]

8
задан Community 23 May 2017 в 12:26
поделиться

3 ответа

Я считаю, что в C# вы можете объявлять переменные как const. static, а также, если вы чувствуете в этом необходимость.

http://msdn.microsoft.com/en-us/library/e6w8fe1b(VS.71).aspx

0
ответ дан 6 December 2019 в 02:24
поделиться

Я подозреваю, что первое предложение вашего вопроса отвечает на него.

0
ответ дан 6 December 2019 в 02:24
поделиться

const выполняет подстановку значения во время компиляции, где бы оно ни использовалось, и поэтому не имеет никакого значения во время выполнения. В целом, то, что вы предлагаете для объектов const, будет очень трудно определить компилятору (будет ли метод модифицировать объект или нет). Ваше предложение использовать ключевое слово const в качестве модификатора доступа также возлагает бремя на автора, и вы все еще остаетесь с проблемой проверки того, изменяет или не изменяет что-то объект. Кроме того, вы навязываете объекту что-то, что не имеет значения во всех контекстах. Что значит, если метод const, но вы не используете его как const-объект? Функциональность, которая вам нужна, обычно достигается путем реализации интерфейса и раскрытия только "доступных только для чтения" частей класса.

1
ответ дан 6 December 2019 в 02:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: