“ 错误 1 无法修改“WindowsFormsApplication1.MyClass.Struct”的返回值,因为它不是 变量”
Code
定义一个结构体MyStruct,
public struct MyStruct
{
public int a ;
public int b;
}
public class MyClass
{
public MyStruct mm_Struct = new MyStruct();//变量
public MyStruct Struct //属性
{
get{return mm_Struct;}
set{mm_Struct=value;}
}
}
写代码时:
MyClass m_class = new MyClass();
m_class.mm_Struct.b = 9;
m_class.Struct.b = 9;
原因:结构体,值类型,Get访问器返回的是值传递,是拷贝,进而修改其成员不会影响到原来的成员,没有意义,因此报错。