函数

1.1      数组形参

1. 采用数组引用的形式定义形参:

$arr两边的圆括号是必须的,因为下标操作符具有更高的优先级

f(int &arr[10]) //error: arr is an array of refrences

f(int (&arr)[10]) //ok: arr is a refrence to an arry of 10 ints

Int (&arr)要从右往左理解:arr首先是一个引用,然后int型说明arr是指向int型的引用。这种定义方式严格限制了必须传递一个长度为10,类型为int的数组。

2. 采用指针的方式传递数组形参

3. 采用数组声明的方式传递形参

void printValues(int[]) {}

void printValues(int[10]) {}

以这种方式传递,编译的时候不会检查数组长度,所以上面两种定义是等价的。

4. 多维数组

int  *matrix[10];//array of 10 pointers

int (*matrix)[10]; //pointer to an array of 10 ints

 matrix两边的圆括号是必须的

1.2      返回值

函数可以返回左值(返回引用)

如果不希望函数返回值被修改,声明函数返回值的时候用const修饰。

函数返回值返回引用可能会带来一些不好的结果,需要的时候还是返回对象来的更好一些。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值