const против только для чтения

Сегодня я нашел статью, в которой поле constназывается компиляция -константа времени , а поле readonlyназывается константа времени выполнения . Эти две фразы взяты из 《Effective C #》. Я искал в MSDN и спецификации языка, ничего не нашел о константе времени выполнения .

Без обид, но я не думаю, что постоянная времени выполнения является правильным выражением.

private readonly string foo = "bar";

создает переменную с именем "foo", значением которой является "bar", и это значение доступно только для чтения, здесь это переменная, не имеет значения constant. Переменная только для чтения по-прежнему является переменной, она не может быть константой. Переменная и константа исключают друг друга.

Может быть, этот вопрос выходит за рамки, все же я хочу услышать мнение других. Что вы думаете?

8
задан Alex 4 July 2012 в 07:21
поделиться