初学者一个很基本的问题:引用

lifx494nenu 2009-12-16 09:36:04
上课的时候书本上的有些算法中数组的是这样引用的:就比如说直接插入排序吧

void InsertSort(RecType &R[],int n){
int i,j;
for(i=2;i<=n;i++){
R[0]=R[i];j=i-1;
while(R[j].key>R[0].key){
R[j+1]=R[j];
j--;
}
R[j+1]=R[0];
}
}
上面的“&”不是引用吗?为什么在调用这个函数的时候会出先引用错误?
...全文
87 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Try6198 2009-12-17
  • 打赏
  • 举报
回复
这个是看懂了,但是关于引用好像还有注意点啊!!
比如引用和数组,指针的区别。
希望一楼的给些指点,说简单明了点!
tian_zhi_dao 2009-12-17
  • 打赏
  • 举报
回复
将参数声明为数组的引用当参数是一个数组类型的引用时数组长度成为参数和实参类型的一部分编译器检查数组实参的长度与在函数参数类型中指定的长度是否匹配
tian_zhi_dao 2009-12-17
  • 打赏
  • 举报
回复
是这样的形式:
类型名 (&变量明)[N];
因为传进去的是数组 所以要指定大小
go_Michael 2009-12-16
  • 打赏
  • 举报
回复
一般数组不用&符号
void InsertSort(int a[],int n); 或者 void InsertSort(int *a,int n);
如果要用引用的话,参考这样
void InsertSort(int (&arr)[10]);

33,028

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧