c++ - C++ 中的函数可以返回一些东西然后执行它的代码吗?

标签 c++ operators

当做这样的事情时:

i2 = i++;

++ 运算符将返回i,然后它将i 加一。

函数也可以返回一些东西然后执行它的代码吗?

最佳答案

不,一旦函数的范围结束(在结束 }),就不能再执行任何代码。

但是,该函数可以存储输入的旧状态、修改输入并返回输入的旧值。这给出了在函数返回值之后执行代码的效果。例如:

int f(int &n) {
  int x = n;    // store input
  n = 42;       // input is modified before return
  return x;     // old input is returned
}

int b = f(a);  // b is equal to a
               // but now a is 42

正如您所观察到的,后增量是这种行为有用的一个例子。另一个例子是 std::exchange ,这看起来是在返回值后修改输入。

关于c++ - C++ 中的函数可以返回一些东西然后执行它的代码吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62658140/

相关文章:

java - 整数的罗马表示

python - numpy 数组的 "In"运算符?

用于从标记中查找等级的 Java 代码不正确

c++ - 将 Integer 转换回 SecByteBlock?

c++ - 将库搜索路径添加到 clang

c++ - 使用 Chromium 作为 MFC CWnd

C++:如何使用cin和file两种方式获取输入?

.net - VB.net 函数中是否有任何 IN 运算符,如 SQL 中的运算符

c - 分配的优先级

具有空检查的 C# AND 运算符