zoukankan      html  css  js  c++  java
  • 何时使用引用参数

    使用引用参数的主要原因

    • 程序员能够在函数中修改调用函数参数中的数据对象
    • 通过传递引用而不是整个数据对象,可以提高程序的运行速度。尤其是当数据对象较大时,如结构和类对象。

    对于使用传递的值而不作修改的函数:

    1. 如果数据对象较小,如内置数据类型或者小型结构,则按值传递。
    2. 如果数据对象是数组,则只能使用指针,并且将指针声明为指向const的指针。
    3. 如果数据对象较大,则使用const指针或者const引用,节省复制结构所需的时间和空间。
    4. 如果数据对象是类对象,则使用const引用。类设计的语义常常要求使用引用。这是C++增添引用这个特性的主要原因。

    对于修改调用函数中数据的函数

    1. 如果数据对象是内置数据类型,则使用指针。
    2. 如果数据对象是数组,则只能使用指针。
    3. 如果数据对象是结构,则使用引用或者指针。
    4. 如果数据对象是类对象,则使用引用。

    使用引用参数,应尽可能使用const

    • 使用const可以避免无意中修改数据的编程错误。
    • 使用const使得函数能够处理const和非const实参。否则将只能接收非const数据。
    • 使用const引用使函数能够正确生成并使用临时变量。

    继承的一个特征是,基类引用可以指向派生类对象,而无需进行强制类型转换。所以,在函数的引用参数设置时,可以定义一个接受基类引用作为参数的函数。调用函数时,可以将派生类对象作为实参。

    将基类引用作为参数,编写函数中参数被用到的数据和特性,派生类必定全部都具有。所以派生类对象作为实参,只会使用或修改它从基类继承下来的特性。

    而反过来,派生类有很多基类所不具有的特性,将基类对象作为实参,不能提供这些特性,函数无法正常运行。

  • 相关阅读:
    Spring MVC 教程(比较全的一篇文章了)
    关于F12的有效利用
    论运营工作与小区收垃圾的相似之处
    吴淞炮台湾湿地森林公园半日游
    真正的运营
    今天是入职通联3周年
    甲午年过临海
    购买vps创建账号后无法登录ftp
    prim+BFS
    最小生成树
  • 原文地址:https://www.cnblogs.com/xyqhello/p/3525797.html
Copyright © 2011-2022 走看看