c# 变量的初始化

温习一下C#基础知识。简要记录一下

C#中对变量的初始化要求比较高,是为了安全考虑

一般的编译器,只把变量的初始化当做是警告,而C#则当做错误。

C#有两个方法可以确保变量在使用前进行初始化

1.变量是类或结构体中的字段,如果没有显示的初始化,创建这些变量时,其值默认是0

2.方法的局部变量必须在代码中显示的初始化,之后才能在语句中使用它们的值。此时,初始化不是在声明变量时进行的,但编译器会通过检查所有可能的路径,如果检测到局部变量在初始化之前就使用了它的值,就会产生错误。

C#的方法与C++的方法相反,在C++中,编译器让程序员确保变量在使用之前进行了初始化。

例如,C#中不能使用下列语句

public static void Main()
{
int a;
Console.WriteLine(a);
return;
}

报错:error CS0165:使用了未赋值的局部变量“a”

看一下下面这语句

Test objTest;

在C++中,上面的代码会在对堆栈中创建一个Test类的实例。而再C#中,这行代码仅会为Test类创建一个引用。这个引用还没有指向任何对象。

C#中实例化一个对象需要使用new关键字  

Test objTest;
objTest
= new Test();

  

posted @ 2011-09-17 00:18  Lee.Kevin  阅读(2087)  评论(0编辑  收藏  举报