如何声明全局变量?

时间:2012-04-23 17:09:28

标签: c#

我对变量声明中的内存管理存有疑问。

在我的课堂上,我有大约20种方法,我在课堂上使用了大约50个变量。

我在一个类的开头全局声明了所有变量。

这是正确的做法吗?或者哪一个更好......使用结构或其他任何东西???

下面是一个基本的例子,我需要使用优化我的记忆。

  class Program
    {
        static  int a, b, c, d;           //----> Here am declaring , i need any other way
        static void Main(string[] args)
        {
            a = 10;
            b = 20;
            c = 30;
            d = 40;

            int result = add(a, b, c, d);
            Console.WriteLine(result);
            Console.ReadLine();
        }
        public static int add(int w, int x, int y, int z)
        {
            return w + x + y + z;
        }
    }

1 个答案:

答案 0 :(得分:5)

您的类级变量仅在单个方法中使用,因此仅在该方法的范围内声明它们:

static void Main(string[] args)
{
    var a = 10;
    var b = 20;
    var c = 30;
    var d = 40;

    int result = add(a, b, c, d);
    Console.WriteLine(result);
    Console.ReadLine();
}

根据经验,保持变量尽可能接近其使用。任何时候范围必须增加,退一步思考结构。不要盲目地将变量放在范围内。

您是否有理由尝试优化代码的资源消耗?很可能,特别是在这种情况下,编译器已经很好地完成了这项工作。除非您看到实际问题,否则不要过早优化。这通常会导致无法管理的代码。

此外,这是一个附注,因为我知道这是一个人为的例子......有意义的变量名称非常重要。有意义的名称还可以帮助您理解和识别变量的期望范围。如果一个变量被称为a,那么它不会给你任何关于它意味着什么的上下文。但是,如果名称告诉您它的含义,那么您可以更容易地看到代码中的哪些上下文实际负责该值,从而更好地定义范围。