的实例分配给一个派生类的构件的较短版本考虑这个小例子:由基类
public class BaseClass { }
public class DerivedClass : BaseClass { public int Field; }
public static class Program
{
public static void Main(string[] args)
{
BaseClass baseVar = new DerivedClass();
if(baseVar is DerivedClass)
{
var derivedVar = (DerivedClass)baseVar;
derivedVar.Field = 1;
baseVar = derivedVar;
}
}
}
我有很多的这样的代码中,如果条件。有没有这种速记版本,所以我不必创建一个临时派生变量?
请注意,这种代码被称为代码异味。尝试找到一个通用的接口或基类来组合普通的类并尝试使用这些接口。它不易出错,减少了维护工作量。 – ckruczek