码迷,mamicode.com
首页 > 编程语言 > 详细

C++拾遗(六)函数相关

时间:2016-04-18 13:24:27      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:

返回值

C++规定返回值不能是 数组。但可以是其它任何类型(包括结构体和对象)。

通常,函数将返回值复制到指定的CPU寄存器或内存单元中,然后调用函数调用该内存单元的值。

函数原型

参数列表中可以不包括变量名,原型中的变量名相当于占位符,不需要与函数定义中一样。

在C++中,原型的()中为空意味着没有参数,(...)意味着原型不指定参数列表,在原型之后定义参数列表。

通常,原型自动将被传参数强制转换为期望类型,条件是两者都是算术类型。

函数参数

声明多个参数的时候不能像声明变量一样组合声明,如:float a, b; 做为变量声明是可行的;但是void function( float a, b)是不合法的,应为

void function( float a, float b)。

函数传递数组

1 void function( int * array, int length );

其中array是传入数组的第一个元素的地址,这样做有好处:节省复制整个数组的时间和内存。也有坏处:有破坏原始数据的风险。
另外,传递数组时,数组的长度需要单独传递,在function 中使用 sizeof(array) 获得的将是指针变量的长度。

为了防止对原数据的修改,可在参数前加上const关键字。

1 void function( const int * array, int length );

原始数据不一定是常量,但是对于function来说,原始数据是只读的常量。

C++拾遗(六)函数相关

标签:

原文地址:http://www.cnblogs.com/DeathKnightH/p/5336296.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!