簡體   English   中英

沒有合適的默認構造函數,也不存在默認構造函數

[英]No appropriate default constructor available and no default constructor exist

我是C ++的新手,正在嘗試編寫一個“日期類”程序來對日期進行一些計算。

這兩個錯誤在我看來:

錯誤C2512:“日期”:沒有適當的默認構造函數

IntelliSense:類“ Date”不存在默認構造函數

在我已經從類中聲明一個對象的行中:

int _tmain(int argc, _TCHAR* argv[])
{
    Date d;
}

.h文件中的構造函數:

public:
      Date(int, int, int);

實現:

Date::Date(int d= 0, int m= 0, int y= 0)// DEFAULT CONSTRUCTOR 
{
      d = m = y = 0;
}

請幫助我,為什么會出現此錯誤?

做這個:

.h文件中的構造函數:

public: 
      Date(int=0, int=0, int=0); 

實現:

Date::Date(int d, int m, int y)// DEFAULT CONSTRUCTOR  
{ 
      // Initialize data of this class
} 

方法的原型/聲明應提及默認參數,而不是實現。

您可能還必須添加這樣的構造函數:

public:
     Date();
     Date(int, int, int);

Date::Date()// DEFAULT CONSTRUCTOR 
{
     d = m = y = 0;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM