日期:2014-05-17  浏览次数:20679 次

C#中继承的一个小问题
有个A类和B类

A : B  (A继承B)

A的构造函数里

public A(B b)
{

}
怎么给父类赋值?
base = b;(错误,base是只读)


注:
B类不可以更改任何东西

B类没有构造函数可以创建

也不可以在A类加一个属性什么的..


------解决方案--------------------
A类中可以直接对B类非私有级别的成员直接赋值  
------解决方案--------------------
public A(B b)
{
    base.成员 = b.成员;
}

注:
任何类型都不可能没有构造函数
------解决方案--------------------
一般情况我们是这样写的
class B
{
puublic B(B b)
{
}
//B的构造函数 里面做事情 直接用一个b的实例来实例化B
}

class A:B
{
public A(B b)
:base(b)
}

不知道你看明白没有