24小时热门版块排行榜    

查看: 1549  |  回复: 5

zhuwei04

木虫 (正式写手)

[求助] [求助]C/C++中多个返回值的问题

C++中的函数是否能设定多个输出值

例如:
有一个函数fun(a,b,c,d,e),a、b、c、d、e是输入参数,通过函数计算得到f1=a+b;f2=a+c+d+e,要返回f1和f2的值应该怎么实现?

谢谢!
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hxz

木虫 (正式写手)

【答案】应助回帖


xzhdty(金币+1): 谢谢你的应助 2011-04-30 09:12:53
zhuwei04(金币+5): 嗯,谢谢指教 2011-04-30 10:02:51
c++不能返回多个值
如果需要返回多个值, 一般有两种替代做法:
1. 利用函数的副作用, 返回值在函数外定义, 在函数内修改, 一般为void函数
2. 把返回值打包返回, 如把返回值打包成一个结构返回

ps, 如果想要真正的多值返回, 请用lisp
2楼2011-04-30 09:02:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

★ ★
微尘、梦想(金币+2): 谢谢参与应助! 2011-04-30 19:09:19
一般做法就是传入指针,在函数中修改返回值
CODE:
void foo(int *f1, int *f2, int a, int b, int c, int d, int e)
{
    f1=a+b;
    f2=a+c+d+e;
}

matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
3楼2011-04-30 14:54:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

来自天狼

木虫 (正式写手)

★ ★
微尘、梦想(金币+2): 谢谢回帖交流! 2011-04-30 19:09:41
引用回帖:
Originally posted by libralibra at 2011-04-30 14:54:31:
一般做法就是传入指针,在函数中修改返回值
CODE:
void foo(int *f1, int *f2, int a, int b, int c, int d, int e)
{
    f1=a+b;
    f2=a+c+d+e;
}


楼上的,错了,应该是
void foo(int *f1, int *f2, int a, int b, int c, int d, int e)
{
    *f1=a+b;
    *f2=a+c+d+e;
}
也可以用引用
void foo(int &f1, int &f2, int a, int b, int c, int d, int e)
{
    f1=a+b;
    f2=a+c+d+e;
}
4楼2011-04-30 16:29:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

引用回帖:
Originally posted by 来自天狼 at 2011-04-30 16:29:24:
楼上的,错了,应该是
void foo(int *f1, int *f2, int a, int b, int c, int d, int e)
{
    *f1=a+b;
    *f2=a+c+d+e;
}
也可以用引用
void foo(int &f1, int &f2, int a, int b, int c, i ...

恩呢,手误了,^_^,应该是*f1和*f2
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
5楼2011-04-30 17:49:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

huycwork

金虫 (著名写手)

【答案】应助回帖

★ ★
微尘、梦想(金币+2): 谢谢回复! 2011-05-01 18:21:24
标准的C++做法是pair:
CODE:
#include
std::pair func(int a, int b, int c, int d, int e){
     return std::pair(a+b, a+c+d+e);
}

避免性能损失当然采用指针和引用,但是也不是说不存在抵消性能的办法,Qt的隐式共享就可以达到这样的可读性且没有性能损失。
漩涡的中心有一块空地,空空的。
6楼2011-05-01 10:25:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zhuwei04 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考博] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +4 i3KBRD19ERkG 2026-09-16 4/200 2026-09-17 07:50 by k06BKNblrGRH
[考博] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 5BDX0d0WFp7t 2026-09-15 3/150 2026-09-17 06:50 by k06BKNblrGRH
[博后之家] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 40ms4Wlo4umh 2026-09-14 4/200 2026-09-17 04:26 by k06BKNblrGRH
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +6 6F5UbRU2I5hL 2026-09-14 6/300 2026-09-17 03:04 by Tql5LQhh5rLK
[公派出国] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +6 s3fFTmArrBt6 2026-09-14 6/300 2026-09-17 02:38 by Tql5LQhh5rLK
[博后之家] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 s3fFTmArrBt6 2026-09-13 6/300 2026-09-17 02:26 by Tql5LQhh5rLK
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +4 s3fFTmArrBt6 2026-09-13 4/200 2026-09-17 02:26 by Tql5LQhh5rLK
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +6 s3fFTmArrBt6 2026-09-13 6/300 2026-09-17 02:14 by Tql5LQhh5rLK
[硕博家园] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +6 s3fFTmArrBt6 2026-09-13 8/400 2026-09-17 02:04 by Tql5LQhh5rLK
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +5 3n8v2C8RimXI 2026-09-13 6/300 2026-09-17 01:50 by Tql5LQhh5rLK
[硕博家园] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +6 LwdutQ8HoqWP 2026-09-13 6/300 2026-09-17 01:50 by Tql5LQhh5rLK
[硕博家园] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +5 3n8v2C8RimXI 2026-09-13 5/250 2026-09-17 01:26 by Tql5LQhh5rLK
[博后之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +4 vZfe6xYu34yj 2026-09-14 4/200 2026-09-16 22:40 by Tql5LQhh5rLK
[硕博家园] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 yaCh4X3wd045 2026-09-14 3/150 2026-09-16 20:39 by MHf40yA0Uhyb
[考博] 上海工程技术大学激光智能制造课题组招收博士研究生 +8 两三岁ss 2026-09-14 8/400 2026-09-16 09:46 by 水士口
[找工作] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 6F5UbRU2I5hL 2026-09-14 3/150 2026-09-16 05:15 by LH5NkK5Ud4bh
[考研] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +5 s3fFTmArrBt6 2026-09-14 5/250 2026-09-15 16:59 by CgyNCDVNhGVg
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +4 s3fFTmArrBt6 2026-09-14 5/250 2026-09-15 16:39 by CgyNCDVNhGVg
[教师之家] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 LwdutQ8HoqWP 2026-09-13 4/200 2026-09-14 16:13 by Aj1rhIDL5ixY
[基金申请] 求教各位大神:2026教育部人文社科青年基金项目何时公示呀? +5 云宴山人 2026-09-10 7/350 2026-09-14 12:11 by ecnu2013
信息提示
请填处理意见