标题:新手问函数定义参数问题,谢谢了
只看楼主
wuyuhuan
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2007-11-1
 问题点数:0 回复次数:7 
新手问函数定义参数问题,谢谢了
因为刚学,想知道一下下面三个函数参数定义的有什么区别?以及调用时有什么区别?谢谢了!
   struct List
{ int elemt;
  List *next;
};

1) int clear(List *L);
2) int clear(List *&L);
3) int clear(List L);
搜索更多相关主题的帖子: 函数 定义 参数 List 
2008-03-16 16:43
wuyuhuan
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2007-11-1
得分:0 
怎么没人回答啊,急啊。谢谢大家了!
2008-03-16 17:29
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
得分:0 
1) int clear(List *L);//指针
2) int clear(List &L);//引用,不能像你那样一起用会报错
3) int clear(List L);//一般行参..如果是类的话有副本拷贝问题

学习需要安静。。海盗要重新来过。。
2008-03-16 17:33
wuyuhuan
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2007-11-1
得分:0 
回复 3# 的帖子
先谢谢你了,能不能说更详细点,2) int clear(List *&L);和
3) int clear(List L);参数还是不怎么清楚,我一本教材是这么写的,也运行了,没问题,就是不知道调用函数这两个参数到底有什么区别? /  2)和3)是不在一个程序的两个函数)
2008-03-16 17:47
qfyzy
Rank: 2
等 级:论坛游民
威 望:1
帖 子:380
专家分:86
注 册:2008-2-17
得分:0 
貌似c里面不能用引用,也不可以不写struct

当对C的经验增加时,它会显的很好用.----Dennis M Ritche如是说
2008-03-16 18:06
Ethip
Rank: 5Rank: 5
等 级:贵宾
威 望:15
帖 子:771
专家分:0
注 册:2008-1-18
得分:0 
回复 1# 的帖子
先要理解*和&的意思了, 当然就只能看定义啦!!!
函数1中,参数类型是一个结构体的地址。
后面两个函数,其实质是一样的,在C++中不算同一个函数,因为重载的特性,C中就不行。

当不推荐这样定义函数,明显给自己为难吗!
2008-03-16 18:15
wuyuhuan
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2007-11-1
得分:0 
谢谢你们了!
2008-03-17 21:36
jianghu088
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-3-14
得分:0 
小弟新手  以后 要在这里和大家共同学习  共同努力 哈哈
2008-03-18 01:14



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-203692-1-1.html




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

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