2014-01-08 75 views
2

我收到错误“不包含一个构造函数0参数”从我的C#代码如下:错误:不包含一个构造函数0参数

public class Holiday 
{ 

    string startDate, endDate, firstName, lastName, emailAddress, numberOfGuests; 
    private double Cost = 100; 
    public Holiday(string start, string end, string first, string last, string email, string guestCount) 
    { 
     startDate = start; 
     endDate = end; 
     firstName = first; 
     lastName = last; 
     emailAddress = email; 
     numberOfGuests = guestCount; 
    } 

    public double test 
    { 
     get { return Cost; } 
    } 
} 
public class AdventureHoliday : Holiday 
{ 
    public AdventureHoliday(string start, string end, string first, string last, string email, string guestCount) 
     : base(start, end, first, last, email, guestCount) 
    { 
    } 
    public double totalcost() 
    { 
     double adventureAdditional = 0.50; 
     double xcost = test + (test * adventureAdditional); 
     return xcost; 
    } 
} 

public class CulturalHoliday : Holiday 
{ 

    public CulturalHoliday(string start, string end, string first, string last, string email, string guestCount) 
     : base(start, end, first, last, email, guestCount) 
    { 
    } 
    public double totalcost() 
    { 
     double culturalAdditional = 1.0; 
     double xcost = test + (test * culturalAdditional); 
     return xcost; 
    } 

我已经看过了各个线程对于这个问题,他们都似乎表明,问题应该通过增加来解决:

: base(start, end, first, last, email, guestCount) 

我已经加入这个第二课堂,我仍然得到错误。

public class CulturalHoliday : Holiday 

没有人有任何的想法:我上线201和125 (节假日公共类AdventureHoliday)获得本作的冒险度假,文化休闲两者兼而有之?对不起,如果我错过了一些愚蠢的东西。在此先感谢

+0

哪一行正是给你的错误?它是编译时还是运行时错误? – ashes999

+0

显示“假日”课程。您也没有在代码中显示您调用无参数构造函数的地方。 –

+0

对不起假期。现在已被添加。 – user3174012

回答

3

您需要添加默认parameterless构造函数中

public Holiday() 
{ 
    ... 
} 

也许你正在试图创建一个假日实例不传递任何参数是这样的:

var holiday = new Holiday(); 

或:

var cultural = new CulturalHoliday(); 

默认情况下,所有的类都继承一个默认参数从Object类无构造构造函数。但如果添加一个构造函数接受一些参数,则需要手动添加无参数构造函数。

+0

感谢您正在工作的帮助 – user3174012

0

问题是在别的地方,你不应该需要一个无参数的构造函数,除非该类被序列化。

您必须提供更多信息,即发生错误的确切行,类Holiday的构造函数(至少是签名)以及类Holiday的类继承自哪些类。

+1

如果该类用作需要'new()'的泛型参数,那么您将需要一个无参数的默认构造函数。 – Gusdor

+0

我已将行信息添加到原始文章 – user3174012

相关问题