每当我运行程序时,没有输出,程序就结束了。难道我做错了什么?我确定我错过了一些东西,但我似乎无法弄明白。
#include <iostream>
#include <string>
using namespace std;
class Addr
{
public:
Addr(int i = 0){
total = i;
}
void addNum(int num){
total += num;
}
int getNum(){
return total; }
friend int print(Addr& var);
private:
int total;
};
int print(Addr& var){
return var.total;
}
int main()
{
Addr object1;
object1.addNum(3);
print(object1);
return 0;
}
答案 0 :(得分:0)
您的程序行为正常。没有输出,因为您没有在程序中向控制台打印任何内容。
print
函数仅返回total
。
如果您希望将值打印到控制台,那么您可以更改定义,如下所示:
int print(Addr& var){
cout << var.total << endl; // this prints to the console output
return var.total;
}
答案 1 :(得分:0)
您的代码没有问题。事实是没有使用打印功能。我修改了你的主要功能。
int main()
{
Addr object1;
object1.addNum(3);
cout<<print(object1);
return 0;
}