2013-07-29 2 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

타임 클래스 (헤더)의 정의를 보여주십시오 – OldProgrammer

+0

이 라인은 지금 이상한 -int SECONDS_LEFT 초 = 시간 (23, 59, 59) .seconds_from을 (보이는); 생성자가 아니라 객체에 대한 메서드를 호출하면 안됩니까? – OldProgrammer

+0

'ccc_time.h '가 어떤 모양인지는 알 수 없습니다. –

답변

2

당신은 당신이해야 Time(int, int, int) 생성자를 호출하는 경우 : operator(int, int, int)을해야하지 Time

Time wake_up (7, 7, 7); 

경우입니다.

편집 : 다음과 같이 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

operator (int, int, int)를 만드는 방법. – neel

관련 문제