在函数中设置参数

时间:2017-03-01 19:28:43

标签: c++ function

我的代码是:

#include <iostream>
#include <string.h>
using namespace std;

class Angle {
    private:
        int degrees, minutes, seconds;
    public:
        Angle(){} //required in the assignment 
        Angle(int degrees, int minutes, int seconds){
            this->degrees=degrees;
            this->minutes=minutes;
            this->seconds=seconds;
        }

        void set_degrees(int const degrees){
            this->degrees=degrees;
        }
        void set_minutes(int const minutes){
            this->minutes=minutes;
        }
        void set_seconds(int const seconds){
            this->seconds=seconds;
        }

    int getDegrees(){
        return degrees;
    }
    int getMinutes(){
        return minutes;
    }
    int getSeconds(){
        return seconds;
    }

    int to_seconds(){
        return degrees*3600+minutes*60+seconds; 
    }
};

int check(){
    Angle a;
    if (a.getDegrees()<360 && a.getMinutes()<60 && a.getSeconds()<60) return 1;  
    else return 0;
}

int main() {

    Angle a1;
    int deg, min, sec;
    cin >> deg >> min >> sec;

    if (check(deg, min, sec)) {

        a1.set_degrees(deg);
        a1.set_minutes(min);
        a1.set_seconds(sec);
        cout << a1.to_seconds();

    }

    return 0;
}

我不知道如何在check函数中设置参数,因此它将在main函数中实现它的实现。我无法更改主要功能中的任何内容,因为它是由我的教授预设的,假设我无法将其放在Angle课程中。我得到了“函数int check()”错误的参数太多。

1 个答案:

答案 0 :(得分:0)

如果你看一下set_degrees(),你可以看到一个带参数的函数的例子。使check()接受参数看起来像这样:

int check(int degrees, int minutes, int seconds) {
    // (Use these values somehow)
}