gpt4 book ai didi

c# - "base"语法是什么意思?

转载 作者:太空狗 更新时间:2023-10-29 18:02:45 26 4
gpt4 key购买 nike

有人能告诉我下面的语法是什么意思吗?

public ScopeCanvas(Context context, IAttributeSet attrs) : base(context, attrs)
{
}

我的意思是什么是 method(argument) : base(argument) {} ??

P.S 这是一个类的构造函数。

最佳答案

:base 语法是派生类型链接到接受指定参数的基类上的构造函数的一种方式。如果省略,编译器将静默尝试绑定(bind)到接受 0 个参数的基类构造函数。

class Parent {
protected Parent(int id) { }
}

class Child1 : Parent {
internal Child1() {
// Doesn't compile. Parent doesn't have a parameterless constructor and
// hence the implicit :base() won't work
}
}

class Child2 : Parent {
internal Child2() : base(42) {
// Works great
}
}

还有 :this 语法允许链接到具有指定参数列表的相同类型的构造函数

关于c# - "base"语法是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10503255/

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