【发布时间】:2013-11-17 00:22:13
【问题描述】:
我有一个抽象基类。
我有 2 个从这个基类派生的类。
无论如何我的一个类可以忽略抽象覆盖用法中的字符串参数吗? 还是我只需要发送一个空白的并忽略它? (使可读性略有下降)
我能否拥有一个具有某种可选参数的函数,以便以下两个派生类都可以编译?
PS - 以下代码充斥着无法编译的代码,作为我想做的示例
PS PS - 是的,我已经编译了以下代码 - 请参阅上面的评论以了解结果
public abstract class MyBaseClass
{ //optional string?
public abstract void FunctionCall(int i, string s = "");
}
public class MyDerivedClass : MyBaseClass
{
public override void FunctionCall(int i)
{
MessageBox.Show(i.ToString());
}
}
public class YourDerivedClass : MyBaseClass
{
public override void FunctionCall(int i, string s)
{
MessageBox.Show(s + " " + i.ToString());
}
}
【问题讨论】:
标签: c# class abstract optional-parameters derived-class