相关疑难解决方法(0)

从C++函数返回多个值

有没有从C++函数返回多个值的首选方法?例如,假设一个函数分割两个整数并返回商和余数.我经常看到的一种方法是使用参考参数:

void divide(int dividend, int divisor, int& quotient, int& remainder);
Run Code Online (Sandbox Code Playgroud)

一种变化是返回一个值并通过引用参数传递另一个值:

int divide(int dividend, int divisor, int& remainder);
Run Code Online (Sandbox Code Playgroud)

另一种方法是声明一个包含所有结果的结构并返回:

struct divide_result {
    int quotient;
    int remainder;
};

divide_result divide(int dividend, int divisor);
Run Code Online (Sandbox Code Playgroud)

这些方式中的一种通常是首选,还是有其他建议?

编辑:在现实世界的代码中,可能会有两个以上的结果.它们也可以是不同类型的.

c++

219
推荐指数
13
解决办法
30万
查看次数

标签 统计

c++ ×1