这是在函数中实现 return 语句的正确方法吗?我的函数不会 return 值

Is this the right way to implement a return statement in a function? My function won't return a value

#include <iostream>
using namespace std;
int add(int x, int y) {
    int sum = x + y; 
    return sum;
}
int main() {
    int num1, num2;
    cout << "enter" << endl;
    cin >> num1 >> num2;
    add(num1, num2);
    return 0;
}

Add() 函数没有 return sum 当我 运行 代码。但是,当我用 cout << sum << endl 替换 return sum 时,我的程序 运行 运行良好。我完全是 c++ 的初学者

您的加法函数 return 求和就好了。你什么都不做。考虑

#include <iostream>
using namespace std;
int add(int x, int y) {
  int sum = x + y; 
  return sum;
}
int main() {
  int num1, num2;
  cout << "enter" << endl;
  cin >> num1 >> num2;
  cout << add(num1, num2) << endl;
  return 0;
}

就其价值而言,add 中带有 cout 的版本非常不能正常工作。

int add(int x, int y) {
  int sum = x + y; 
  cout << sum << endl;
}

此函数表现出未定义的行为。它声明了一个 return 类型的非 void 但 return 什么都没有。仅仅 presence 这个函数在你的代码中(即使你从来没有调用过它)就会使整个程序无效,并允许编译器按照它喜欢的方式处理你的代码。打开编译器警告(-Wall);它会为你解决很多这样的问题。