大家先看一段简单的代码,我想实现的是基类简单赋值,而不是考属性一个个的来赋值。
public class A { public int p1 { get; set; } } public class B : A { public B(A data) { base = data; } }
注意到base=data 这里的时候是错误的,编译也不通过,请问大家这是为什么呢?base的具体含义究竟是什么。请问大家有什么解决的办法没(如果是base.p1 = data.p1就算了,属性太多的时候就繁琐了)。
5 回答
森栏
TA贡献1810条经验 获得超5个赞
先回答楼主的问题,再评论楼主的做法。
1、注意到base=data 这里的时候是错误的,编译也不通过,请问大家这是为什么呢?base的具体含义究竟是什么?
因为base代表的是基类,data是实例,把实例覆给类就好比B=new B()一样,显然是不行的。
2、请问大家有什么解决的办法没?
就用你说算了的方法。
不知道楼主有没有注意到,public B(A data)中data产生的时候你是要对它进行一次属性赋值的,也就是说对A的属性一个个赋值你是无法避免的。
- 5 回答
- 0 关注
- 284 浏览
添加回答
举报
0/150
提交
取消