温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

C#中变量的作用域

发布时间:2020-07-09 20:43:29 来源:网络 阅读:1019 作者:mista 栏目:编程语言

变量的作用域

可以在类、接口、方法、语句块、结构体中定义变量。

Java类似,C#中没有C++中的所谓全局变量的概念。

虽然很多书上会将在类中定义的static变量或const变量说明为全局变量,但是这种类的成员变量(或者叫类的属性)和C++中的全局变量有很大的差别。C++中的全部变量是直接定义在所有的函数和类之外的,但C#和Java中不能定义这种变量。


比较有意思的一点:

对于string类型以及类类型等的变量,如果是在循环语句外声明,但没有初始化,而是在循环语句中进行初始化,则在循环语句外部,该变量仍被视为没有初始化。也就是说,在循环语句体中进行的初始化值,在退出循环语句时就被消除了。

但是,如果在循环语句之前对变量进行了初始化,那么循环体中对变量进行的任何改变都会被保留下来。(Java中也是如此)

如:

string str;
for(int i = 0; i < 10; i++)
{
    str = "Line : " + Convert.ToString(i);
}
Console.WriteLine(str);    //会报错,说str没有初始化

这样就可以

string str = "";
for(int i = 0; i < 10; i++)
{
    str = "Line : " + Convert.ToString(i);
}
Console.WriteLine(str);    //str == "Line : 9"


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI