2017-12-10 3 views
-2

3 속성 및 일부 생성자 및 다음과 같은 메서드를 사용하여 클래스를 작성하려고합니다. set (h, m, s), Double getHousrs() 연산자 + correctTime(). 2시 13분 13초시간 길이를 저장하는 수업 시간을 어떻게 만들 수 있습니까?

현재 코드 예 1:76:84을 변경하려면

#include <iostream> 
using namespace std; 

class duration { 
public: 
    duration(int h, int m, int s) 
    :hour (h), minutes (m), seconds (s); 
    {} 
    void printDate() 
    { 
    cout << hour<< ":" << minutes << ":" << seconds << endl; 
    } 
    double getHours() { 
     return hours; 
    } 
    double getSeconds() { 
     return seconds; 
    } 
private: 
    int hour; 
    int minutes; 
    int seconds; 
    duration operator+(duration &obj) 
    { } 
}; 

int main() 
{ 
    duration obj; 

    return 0; 
} 
+3

은 _ "나는 여기에 내 코드를 입력 coudn't 없다!"_ 변명 :면 : [편집기 도움말]의 첫번째 섹션 (https : //로 유래를 또한 당신의 클래스에서 한 다른 모든 오류를 해결했습니다. co.kr/editing-help). 코드가 너무 많으면 설명을 추가하거나 [MCVE]로 좁 힙니다. – user0042

+1

@JJcopl 다른 멤버를 모욕하지 마십시오. –

+0

미안하지만, 나는 무례하기를 원하지 않았지만 여기 몇몇 사람들은 매우 영리한 인물을 만들고 불평하고 부정적인 표시를합니다. 도움 대신에. 물론, 최선을 다하려고 노력했습니다. – JJcopl

답변

-1

이 문제에 대한 해결책은 가장 효율적으로이 나는 같이 할 수있는 함께 값을 추가하는 것입니다

#include <iostream> 
using namespace std; 

class duration { 
public: 
    duration(int h, int m, int s) 
    :hour (h), minute (m), second (s) 
    {} 
    void printDate() 
    { 
    cout << hour<< ":" << minute << ":" << second << endl; 
    } 
    double getHours() { 
     return hour; 
    } 
    double getSeconds() { 
     return second; 
    } 
    duration operator + (const duration& other) 
    { 

    duration temp(0, 0, 0); 
    temp.second = (other.second+second)%60; 
    temp.minute = ((other.second + second)/60 + other.minute + minute)%60; 
    temp.hour = ((other.minute+minute)/60 + other.hour + hour)%60; 
    return temp; 

    } 
private: 
    int hour; 
    int minute; 
    int second; 

}; 

int main() 
{ 
    duration obj(3, 5, 10); 
    duration obj2(4, 55, 40); 

    duration temp = obj + obj2; 

    temp.printDate(); 
    return 0; 
} 
+0

당신은 최고의 @ 제이크 프리먼입니다 – JJcopl

+0

@ JJcopl 당신이 upvote하시기 바랍니다 작동하고 그것이 작동한다면 받아 들일 수 있습니다. –

+0

예, 작동합니다. 고맙습니다. 나는 upvote하려고했지만 unfortunetally 내가 할 수 없어. 내가 15 이하의 평판이나 sth을 가지고 있기 때문에 나는 upvote 할 수 없다는 메시지를 받는다. 하지만 난 최선의 답변을했다 – JJcopl