| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2103 人关注过本帖
标题:[求助]一个函数可以返回两个相同的返回值吗 ?
只看楼主 加入收藏
DarkHero
Rank: 1
等 级:新手上路
威 望:2
帖 子:191
专家分:0
注 册:2006-1-14
收藏
得分:0 
以下是引用DarkHero在2006-2-28 18:10:00的发言:
当然绝对不可以,编译肯定都不通过。
我想你可以使用全局变量,或类的静态变量,或在参数中使用引用来解决

1。全局变量:

int share=0;
int f() {
//do sth.
//share=XXXX; //相当于返回第二个值
return value1; //return value1
}

2。类的静态变量:

class People {
static int share;
//...
int f();
};
int Perple::share=0;

int Perple::f() {
//....
//share = XXXX;
return value1;
}

相当于 people 的一个对象调用f()不但返回f()该返回的值,还修改了 People 类所有对象都共享的share,作临时返回value2用。这个方法似乎不大好。

3。参数
这个最普遍了。或者指针,效果一样。

int f(int &value2) {
//...
//change value2...
return value1;
}

for( ; me.alive() ; ) { 淡泊名利,志存高远 } //Forever
2006-03-04 01:27
快速回复:[求助]一个函数可以返回两个相同的返回值吗 ?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016014 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved