-2
私のコードはこれです:設定引数
#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
機能で引数を設定する方法がわかりません。主な機能の中で何も変えることはできません。なぜなら、それは私の教授がプリセットしているからです。Angle
クラスに置くことはできないと仮定しています。 「int check()
の機能が多すぎます」というエラーが表示されます。
あなたは、パラメータを取らないために 'check'を定義していますが、3つのパラメータでそれを呼び出すようにしようとしている - ので、最初にあなたがそれを変更する必要があります。また、 'check 'の中の' Angle a'は 'main'の' Angle a1'と同じインスタンスではありませんので、あなたがしたいことはしないでしょう。 – UnholySheep