创建一个包含两个变量作为数据成员的类并创建一个成员 函数乘以吗?
class Madina{
int n1,n2 ;
public:int getN1(){
return n1 ;
}
public:int getN2(){
return n2 ;
}
public:int setN1(int new_n1){
n1 = new_n1 ;
}
public:int setN2(int new_n2){
n2 = new_n2 ;
}
public:int func(){
return n1*n2;
}
};
int main(){
Madina example ;
int n1 =0;
int n2 =0;
cout << "Input"<<endl ;
cout << "Enter 1st number"<<endl;
cin >> n1 ;
cout << "Enter 2nd number"<<endl ;
cin >> n2 ;
example.setN1(n1);
example.setN2(n2);
cout << "get n1 " << example.getN1()<<endl;
cout << "get n2 " << example.getN2()<<endl;
cout << "Output product is "<< example.func()<<endl ;
return 0 ;
}
我不知道为什么程序崩溃了......没有解释任何东西!
答案 0 :(得分:1)
我稍微更改了您的代码。
为什么你的setter方法会返回int? Setter方法永远不会返回任何东西?我已经测试了这段代码,它对我来说很好。
同样如上所述,方法只需要公开一次而不是单独公开。
#include <iostream>
class Madina{
int n1,n2 ;
public:
int getN1(){
return n1 ;
}
int getN2(){
return n2 ;
}
void setN1(int new_n1){
n1 = new_n1 ;
}
void setN2(int new_n2){
n2 = new_n2 ;
}
int func(){
return n1*n2;
}
};
using namespace std;
int main(){
Madina example ;
int n1 =0;
int n2 =0;
cout << "Input"<<endl ;
cout << "Enter 1st number"<<endl;
cin >> n1 ;
cout << "Enter 2nd number"<<endl ;
cin >> n2 ;
example.setN1(n1);
example.setN2(n2);
cout << "get n1 " << example.getN1()<<endl;
cout << "get n2 " << example.getN2()<<endl;
cout << "Output product is "<< example.func()<<endl ;
return 0 ;
}
此外,其他用户应该提供C ++标记而不是Java标记。