如何从无参数派生类调用参数化基类构造函数?

问题描述:

我的基类不包含无参数的构造函数。如何从无参数派生类调用参数化基类构造函数?

所以我通常可以调用基类的构造函数是这样的:

public ItemFoldersForm(FormConstructor constuctorOptions): base(constuctorOptions.WindowTitle, constuctorOptions.TabName, constuctorOptions.TabButton) 
     { 

     } 

所有这一切是非常标准的,但为了便于重用我想有一个参数的构造函数在我的派生类。这是因为构造函数选项基于随机生成器。

事情是这样的:

public ItemFoldersForm() 
     { 
     var constructorOptions = ConstructorOptions.GetRandomConstructorOptions(); 
     base: // what to do here.... 
     } 

是这个概念可以用C#?

您可以定义两个构造函数:

public ItemFoldersForm(FormConstructor constuctorOptions) : base(constuctorOptions.WindowTitle, constuctorOptions.TabName, constuctorOptions.TabButton) 
{ 
} 

public ItemFoldersForm() : this(ConstructorOptions.GetRandomConstructorOptions()) 
{ 
} 

使用默认的构造函数来生成随机选择,然后再传递到重载的构造函数传递性能的基础。

请注意,唯一的方法是在构造函数的主体之前执行此操作。