次のコードを検討してください。
class Program
{
static void Main(string[] args)
{
var instance = Activator.CreateInstance<Person>();//No parameterless constructor defined for this object.
}
}
public class Person
{
public Person(string name = "Shahrooz") { }
}
このコードActivator.CreateInstance<Person>();
を使用すると、次のエラーが発生します。
このオブジェクトにはパラメーターなしのコンストラクターが定義されていません。
私のコンストラクターにはデフォルトのパラメーターがあることに注意してください: string name = "Shahrooz"
コンストラクターにデフォルト値パラメーターがあるにもかかわらず、コンストラクターを持つクラスからインスタンスを作成できないのはなぜですか?