C# – DateTime构造函数调用

所以,我有这个程序,其构造函数的输入为DateTime。

但每当我尝试创建该类的对象,并将DateTime作为参数传递时,就会出现错误。

代码如下:

public Student(DateTime dob) { DateofBirth = dob; } } class Program { static void Main(string[] args) { var myprogram = new Student(1995,04,29); 

但是,它在Student类中显示错误,指出构造函数不能接受三个参数。 请帮忙!

PS:上面和下面有代码,所以忽略括号。

是的 – 你试图将三个整数参数传递给构造函数,但它接受一个DateTime值。 您当前没有创建DateTime值。 您需要做的就是将构造函数调用更改为:

 var myprogram = new Student(new DateTime(1995, 4, 29)); 

不会隐式发生 – 你需要告诉编译器你真的有意创建一个DateTime

作为替代方案,您可以添加一个Student构造函数来创建DateTime并链接到另一个构造函数:

 public Student(int year, int month, int day) : this(new DateTime(year, month, day)) 

但这对我来说对Studentclass来说似乎不是一个好主意。

您的类将DateTime作为参数,而不是三个整数。 试试这个:

 var myprogram = new Student(new DateTime(1995,04,29));