制作返回值的空隙函数
Making a void function that returns a value
我被要求制作一个返回值的void函数。例如,如果我们有类似的东西:
int add(int n, int k){
return n+k;
}
现在,由于 void 没有返回任何内容,该函数如何返回值?是否有一些隐藏的方法可以这样做:
void add(int n, int k){
//returning the sum of n and k in a void function
}
否则这是我第一次想到的?
使用输出参数,例如:
void add(int n, int k, int &result) {
result = n+k;
}
...
int sum;
add(1, 2, sum);
// use sum as needed...
或:
void add(int n, int k, int *result) {
*result = n+k;
}
...
int sum;
add(1, 2, &sum);
// use sum as needed...
根据定义,void
函数无法返回值。这就是void
在这种情况下的意思。
void
功能可以通过多种方式将信息传达给其呼叫者:
- 可以采用指针参数
- 它可以采用参考参数
- 它可以为全局变量(或呼叫者可见的任何对象)分配值
如果要返回值的函数,请不要将其定义为void
。
相关文章:
- 程序不向函数返回值
- 如何将不可移动和不可复制的函数返回值获取到数组中
- 存储函数返回值或立即使用c++
- 如何删除新分配的字符,这也是函数返回值?
- 不从函数返回值会导致段错误
- lambda 函数返回值的有效性
- 如何获取有关 Visual Studio 代码分析中未经检查的函数返回值的警告
- 存储指向函数返回值的指针
- 在 OOP 中,调用函数返回值还是直接调用值更快?
- 函数返回值的自动类型扣除
- 为循环中多次调用的函数返回值预分配内存的正确方法是什么
- 函数返回值的位运算符提升
- 从捕获 constexpr 函数返回值的变量中删除 constexpr 会删除编译时计算
- C++ ReSharper - 生成函数返回值/参数类型的变量
- std::clamp - 检测函数返回值是否绑定到 const T&
- C 递归函数返回值
- 是否可以在C 中使回调函数返回值
- C++标准是否保证函数返回值具有常量地址?
- 将函数返回值传递给引用参数会导致 GCC 中的编译错误
- 函数返回值错误