使用方法(C#)初始化常量变量

时间:2013-06-17 06:26:01

标签: c# c#-4.0

是否可以使用另一个类

的方法初始化常量值的值
namespace ConsoleApplication1
{
    class Program
    {
        const int gravit = haha.habc();//something like this
        static void Main(string[] args)
        {
            some codes.....

        }
        public class haha
        {
            int gar = 1;
            public int habc()
            {
                int sa = 1;
                return sa;
            }

        }
    }
}

例如像上面的代码一样(带有此代码的FYI,我将表达式分配给...必须是常量),如果没有,还有其他方法可以执行与此类似的操作。

2 个答案:

答案 0 :(得分:7)

不,那是不可能的,您可以使用readonly字段,因为在编译时应该知道常量值:

private static readonly int gravit = haha.habc();//something like this

注意:如果您想以这种方式调用,habc方法应该是静态的。

答案 1 :(得分:1)

Constants是在编译时应该知道但不会更改的值。所以ReadOnly是您应该选择的选项。

private readonly int gravit = haha.habc();