C#语言学习:变量的声明与初始化的范围(对比C++)

C# 中如何代码段有错误:int i = 0;string text;for(i = 0;i < 10;i++){text = "Line " + Convert.ToString(i);Console.WriteLine("{0}", text);}Console.WriteLine("First Console App: {0}",text); // 错误CS0165使用了未赋值的局部变量“text”书上的解释如下:必须在使用变量前对其进行声明和初始化,而 text 是在 for 循环中初始化的。赋给 text 的值在循环块退出时就丢失了。这与 C++ 语言的差别是明显的。如下代码,定义一个 class 后,先是声明这个类的一个变量;然后在一个代码块中初始化这个变量。在退出这个代码块后,此变量的内容还是存在的,因为没有超过此变量的定义范围。除非,,在代码块中调用 delete 来释放此变量。class testVarInit{public:testVarInit(){printf("init\r\n");}~testVarInit(){printf("deinit\r\n");}};int _tmain(int argc, _TCHAR* argv[]){testVarInit *test;{test = new testVarInit();// delete test;}getchar();return 0;}

不能接受失败,也意味太想去成功了,从心理学上解释,

C#语言学习:变量的声明与初始化的范围(对比C++)

相关文章:

你感兴趣的文章:

标签云: