码迷,mamicode.com
首页 > Windows程序 > 详细

C#变量初始化问题:字段初始值无法引用非静态字段、方法或属性

时间:2016-09-03 01:08:36      阅读:226      评论:0      收藏:0      [点我收藏+]

标签:

问题:字段初始值设定项无法引用非静态字段、方法或属性的问题

下面代码出错的原因,在类中定义的字段为什么不能用? 
public class Test 
{
public Test()
{
}
public int Age=23;
public int temp = Age;//ERROR 字段初始值设定项无法引用非静态字段、方法或属性
}

 

C#规定在类内部只能定义属性或者变量,并初始化,不能直接变量引用变量。

在初始化类实例之前就调用了字段

c# 中字段的初始化先于构造函数。

string y = "asdf" + x; 实际上是 y = "asdf" + this.x;

因为这时this还没被初始化,所以编译会报错。

属性内存和变量内存的分配的时间不一样。 
属性是用的时候分配,变量是在类初始化时候分配。

C#变量初始化问题:字段初始值无法引用非静态字段、方法或属性

标签:

原文地址:http://www.cnblogs.com/aardvark/p/5836026.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!