| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 804 人关注过本帖
标题:“引用作为函数参数”求讲解
只看楼主 加入收藏
cengyue
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2012-3-9
结帖率:0
收藏
已结贴  问题点数:20 回复次数:12 
“引用作为函数参数”求讲解
#include "iostream"
using namespace std;
void larger(int& , int& );
int _tmain()
{
    int value1=10;
    int value2=20;
    cout<<larger(value1,value2)<<endl;
    return 0;
}

void larger(int& m, int& n)
{
    n=30;
    return m>n? m:n;
}
结果为30,而且value2的值也变为30,求解释。
搜索更多相关主题的帖子: 函数 void include 
2012-03-10 00:09
lz1091914999
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:四川
等 级:贵宾
威 望:37
帖 子:2011
专家分:5959
注 册:2010-11-1
收藏
得分:7 
larger函数中,m是value1的别名,n是value2的别名,所以针对n或m的修改就是对value1或value2的修改。

My life is brilliant
2012-03-10 14:04
陈雷阿宝
Rank: 1
等 级:新手上路
帖 子:2
专家分:7
注 册:2012-3-10
收藏
得分:7 
larger函数的参数是引用,引用就是一个内存可以用两个字母表示,即n和value2指的是同一个地址中的数,都是30.
2012-03-10 21:22
非死亡!
Rank: 8Rank: 8
来 自:四川
等 级:蝙蝠侠
帖 子:179
专家分:760
注 册:2011-10-31
收藏
得分:7 
看看这个 你就明白了:
程序代码:
#include "iostream"
using namespace std;
void larger(int , int& ,int* );
int main()
{
    int value1=1;
    int value2=2;
    int value3=3;
    larger(value1,value2,&value3);
   
    cout<<value1<<"   "<<value2<<"     "<<value3<<endl;
    return 0;
}

void larger(int m, int& n,int *l)  //不用的参数
{
    n=0;
    m=0;
    (*l)=0;                        //注意是*l  如果是l=0;会是什么答案?为什么?
}


 

能力 技巧
2012-03-10 22:35
享像
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-3-18
收藏
得分:0 
我认为你的void larger(int& , int& )函数无法返回值;你已经声明无返回值拉!
引用相当于内存的地址吧;
2012-03-18 22:50
HUYOULIANGHH
Rank: 1
等 级:新手上路
帖 子:5
专家分:1
注 册:2011-8-29
收藏
得分:0 
这里面的两个引用完全可以换成两个指针,其实操作m就是操作main函数中的变冒!
2012-03-19 10:25
cengyue
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2012-3-9
收藏
得分:0 
回复 2楼 lz1091914999
谢谢 我觉的三楼的好理解些
2012-03-28 00:19
cengyue
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2012-3-9
收藏
得分:0 
回复 4楼 非死亡!
这程序 我看起来还真有点费劲 回去好好研究
2012-03-28 00:23
cengyue
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2012-3-9
收藏
得分:0 
回复 5楼 享像
呵呵 int larger
2012-03-28 00:23
cengyue
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2012-3-9
收藏
得分:0 
回复 6楼 HUYOULIANGHH
引用和指针好像有些不一样 我当然还不清楚
2012-03-28 00:24
快速回复:“引用作为函数参数”求讲解
数据加载中...
 
   



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

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