set访问器的value值到底是怎么回事,在字段和属性有关联的情况下,set是不是就相当于写入的操作???
private string _name;
public string Name
{
get{return _name;}
//赋值语句不是把右边的赋给左边!
//写入操作不应该是把属性的值赋给字段吗?
//怎么把字段的值赋给了value???
set{_name=value;}
}
求set访问器的原理!!!
从右往左。
set可用理解为:
public void Name_Set(string value){
_name=vlaue;
}
你在说什么?
属性是2个方法,方法不是值.方法有返回值.
value是C#语言的 局部关键字,只在属性访问器内部做关键字用,用于表示属性访问器中set方法的参数
public string Name
{
get{return _name ; }
set {_name = value ;}
}
等价于
public string get_name()
{
return _name;
}
加上
public void set_name(string value )
{
_name = value;
}
谢谢了🙏
说明你对底层还不了解,建议你看下属性被cli编译后的代码,你就清楚了,value实际就是一个入参的值,get set会被编译成2个方法