注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Kandy

长风破浪会有时,直挂云帆济沧海!

 
 
 

日志

 
 

何时使用引用参数  

2009-05-26 16:30:06|  分类: C++知识点 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
        使用引言参数的主要原因有两个:
        1.程序员能够修改调用函数中的数据对象;
        2.通过传递引用而不是整个数据对象,可以提高程序的运行速度。
       当数据对象比较大时(如结构和类对象),第二个原因最重要。这些也是使用指针参数的原因。这时有道理的,因为引用参数实际上是基于指针的代码的另一个接口。那么,什么时候应该使用引用、什么时候使用指针呢?什么时候又应该按值传递呢?下面是一些指导原则:
         对于使用传递的值不作修改的函数:
        1.如果数据对象很小,如内置数据类型或小型结构,则按值传递。
        2.如果数据对象是数组,则使用指针,因为这是惟一的选择,并讲指针声明为指向const的指针。
        3.如果数据对象是较大的结构,则使用const指针或const引用,以提高程序的效率。这样可以节约复制结构所需要的时间和空间。
        4.如果数据对象是类对象,则使用const引用。类设计的语义常常要求使用引用,这是c++新增加这项特征的主要原因。因此,传递类对象的标准方式是按引用传递。
       对于修改调用函数中数据的函数:
       1.如果数据对象是内置数据类型,则使用指针。如果看到诸如fixit(&X)这样的代码(其中x是int型),则很明显,该函数将修改X。
       2.如果数据对象是数组,则只能使用指针。
       3.如果数据对象是结构,则使用引用或者指针。
       4.如果数据对象是类对象,则使用类对象。
       当然,这只是一些指导原则,很可能有充分的理由做出其他的选择。例如,对于基本类型,cin使用引用,因此,可以使用cin>>n,而不是cin>>&n。
  评论这张
 
阅读(116)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017