大家先看一段簡單的代碼,我想實現的是基類簡單賦值,而不是考屬性一個個的來賦值。
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 關注
- 313 瀏覽
添加回答
舉報
0/150
提交
取消