Today I found an article where a
const field is called compile-time constant while a
readonly field is called runtime constant. The two phrases come from 《Effective C#》. I searched in MSDN and the language spec, find nothing about runtime constant.
No offensive but I don't think runtime constant is a proper phrase.
private readonly string foo = "bar";
creates a variable named "foo", whose value is "bar", and the value is readonly, here it is a variable, no business on
constant. A readonly variable is still a variable, it can't be a constant. Variable and constant are mutually exclusive.
Maybe this question goes overboard, still I want to listen to others' opinions. What do you think?