2013-07-29 77 views
2

我正在學習C++,我正在嘗試使用未包含在dev C++中的頭文件完成練習。我已經嘗試導入頭文件,並且dev C++顯示它被列爲標頭。另外,我已經創建了一個項目,並在編譯每個常見問題之前將ccc_time.h文件添加到項目中。下面是我做了什麼:錯誤:無法匹配'(時間)(int,int,int)'

#include <iostream> 

using namespace std; 

#include "ccc_time.h" 

int main() 

{ 
    Time wake_up; 

    wake_up (7, 7, 7); 
    wake_up.add_seconds(1000); 
    cout << wake_up.get_hours() 
     << ":" << wake_up.get_minutes() 
     << ":" << wake_up.get_seconds() << "\n"; 

    Time now; 
    int seconds_left = Time(23, 59, 59).seconds_from(now); 

    cout << "There are " 
    << seconds_left 
    << " seconds left in this day.\n"; 

    return 0; 
} 

我得到的錯誤是:

[Error] no match for call to '(Time) (int, int, int)'

我缺少什麼?

+0

請出示Time類(頭)的定義 – OldProgrammer

+0

這行看起來很奇怪 - 詮釋seconds_left =時間(23,59,59).seconds_from(現);你不應該在一個對象上調用一個方法,而不是構造器? – OldProgrammer

+0

我們不知道'ccc_time.h'是什麼樣子。 –

回答

2

如果您呼叫Time(int, int, int)你應該做的構造:

Time wake_up (7, 7, 7); 

如果沒有Time應該有operator(int, int, int)

編輯:您可以定義operator(int, int, int)如下:

void Time::operator(int a, int b, int c) 
{ 
    // do something appropriate 
} 
+0

謝謝,但我已經嘗試過,並沒有幫助。我相信這是dev C++識別頭文件的問題。因爲我決定首先將頭文件添加到scritp中並正確執行。所以有一個頭文件的問題,我打電話給它,或者dev C++。 – user2631994

+0

劇本是什麼? – cahn

+0

如何使運算符(int,int,int)。 – neel

相關問題