gpt4 book ai didi

c# - 继承类 C# 中的空构造函数

转载 作者:太空狗 更新时间:2023-10-29 22:18:48 24 4
gpt4 key购买 nike

我用 C# 编写了一个简单的泛型类。

class Foo<T>
{
public object O{get;set;}
public Foo(object o)
{
O=o;
}
}

和另一个继承自它的类

class Bar:Foo<object>
{
public Foo(object o):base(o)
{ }
}

我的问题是我是否可以避免在 Bar 类中编写该构造​​函数,因为它根本没有做任何特别的事情。 PS:构造函数中的参数是必须的。

最佳答案

不,你不能。没有构造函数的继承。 Bar 中的构造函数 做一些事情:它向基本构造函数提供一个参数,使用它自己的参数作为该参数。无法自动执行此操作。

编译器将自动为您提供的唯一构造函数是等同于:

public Bar() : base()
{
}

对于具体类,或者对于抽象类:

protected Bar() : base()
{
}

...只有在您未明确提供任何其他构造函数时才会提供。

关于c# - 继承类 C# 中的空构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30984806/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com