非引用形参//交换函数,传递的实参只是参数的副本。并不能起到交换作用
void swap(int a, int b) {
int m = a;
a = b;
b = m;
}指针形参//可以起到交换作用
void swap(int *a, int *b) {
int m = *a;
*a = *b;
*b = m;
}引用形参//可以起到交换作用...
分类:
编程语言 时间:
2015-05-28 14:05:27
阅读次数:
160
1. 如果希望通过函数调用修改实参的值,就应该将形参定义为引用类型;
例如:用swap函数交换两个数的值,应该将形参定义为引用类型
2. 为了通过一次函数调用获得多个结果值,也可以使用引用形参;
3. 在向函数传递大型对象时,为了避免复制实参以调高效率,以及使用无法复制的类类型(其复制构造函数为private的类类型)作为形参类型时,
也应该将形参定义为引用类型。但这时使用...
分类:
编程语言 时间:
2015-05-08 12:59:05
阅读次数:
176
一、函数模板模板定义以关键字template开始,后跟一个模板参数列表,在模板定义中,模板参数列表不能为空。模板类型参数:类型参数前必须使用class或typename关键字。非类型模板参数:表示一个值而不是一个类型数组引用形参://&arr两端的括号必不可少void print(int(&arr)...
分类:
其他好文 时间:
2015-04-10 11:11:27
阅读次数:
159
函数的定义C++是一种静态强类型语言,对于每一次的函数调用,编译时都会检查其实参,必须与形参类型相同,或可被转换为该类型。参数传递普通的非引用类型的参数通过复制对应的实参实现初始化。引用形参直接关联到绑定的对象,而非这些对象的副本。引用形参的另一种用法是向主调函数返回额外的结果(当一个返回值不够时)...
分类:
编程语言 时间:
2015-01-31 00:16:24
阅读次数:
171
问题:什么时候使用指针形参?什么时候使用引用形参?解释两者的优点和缺点。回答:参数以引用参数传递和以指针形式传递效果相同,程序员能够修改调用函数中的数据对象,参数传递过程中防止拷贝对象,可以提高运行速度。1.何时使用引用参数和指针形参: (1)对于使用传递的值而不做修改的函数: 如果数据对象很小.....
分类:
编程语言 时间:
2015-01-30 18:58:59
阅读次数:
177
1.数组引用形参,C++允许将变量定义成数组的引用,给予同样的道理,形参也可以是数组的引用,此时引用形参绑定到对应的实参上,也就是绑定到数组上1 void print(int (&arr)[10])2 {3 for (auto elem : arr)4 cout il)2 {3...
分类:
编程语言 时间:
2014-10-20 18:46:39
阅读次数:
225
一直不明白形参里什么时候用引用,什么时候不用引用。今天去查了一下:引用的好处: 1.向函数传递较大的对象时,需要使用引用形参,比如string这种不知道会有多大的类型; 2.如果要改变实参的值,引用用起来方便,可以回想一下学引用的第一个例子swap函数,比指针方便多了;其次,如果不想改变实参的值.....
分类:
其他好文 时间:
2014-09-09 22:44:59
阅读次数:
250
面向对象程序设计上机练习四(变量引用)
Time Limit: 1000MS Memory limit: 65536K
题目描述
将变量的引用作为函数形参,实现2个int型数据交换。
输入
输入2个int型整数。
输出
输出2个整数交换前后的值。
示例输入
88 66
示例输出
88 66
66 88
把变量的引用作为函数形参,即传送变量的别...
分类:
其他好文 时间:
2014-09-03 09:42:46
阅读次数:
257
------------- const指针、const引用、const引用形参 --------------------
【1】const修饰指针和引用
1. 术语“const引用”就是“指向const对象的引用”,习惯说成const引用与非const引用。这点与指针不同,指针中“const指针”与“指向const对象的指针”是不同的。
2. 值得注意的是:const引用和指向const对象...
分类:
编程语言 时间:
2014-08-13 10:34:25
阅读次数:
209