• c++相对于C提供的新的函数特性


    新特性包含 内联函数、按引用传递变量、默认的参数值、函数重载(多态) 以及模板函数

    内联函数:是c++为了提高程序运行速度所做的一项改进。常规函数与内联函数的区别不在于编写方式,而在与C++编译器如何将他们组合到程序中。

    程序执行函数调用指令时,程序将在函数调用后立即存储该指令的内存地址,并将函数参数复制到堆栈(为此保留的内存块),跳到标记函数起到的内存单元,执行函数代码(也许还需将返回值放入到寄存器中),然后调回到地址被保存的指令处。来回跳跃并记录跳跃位置需要一定的开销。

    内联函数的编译代码与其他程序代码“内联”起来了。即:编译器使用相应的函数代码替换函数调用。 程序无需跳转,但是代价是:需要更多的内存。 如果程序在10个不同的地方调用同一个内联函数,改程序将包含该函数的10个代码拷贝。

    如果执行函数代码的时间比处理函数调用机理的时间长,则所节省的时间很少,则不选择内联函数。通常,如果函数定义占用多行,则将其作为内联函数就不太合适。

    在函数声明和定义前添加: inline。

    引用变量:引用是已定义的变量的别名。  引用变量的主要用途是用作函数的参数,通过将引用变量用作参数,函数将使用原始数据,而不是拷贝。 

    引用与指针的差别:必须在声明引用时将其初始化。而不像指针那样,先声明,再赋值。 引用一旦被初始化,便不能改变其指向。、

    引用经常被用作函数参数,是的函数中的变量名成为调用程序中的变量的别名,这种传递参数的方法称为按引用传递。C++新增的这项特性是对C的超越,C只能按值传递。

    临时变量、引用参数和const:如果实参与引用参数不匹配,C++将生成临时变量。现在,仅当参数为const引用时,C++才允许这样做,但这是一种新的限制。

    应尽可能使用const:将引用参数声明为常量数据的引用的理由有3条:

    1. 使用cosnt 可以避免无意中修改数据的编程错误
    2. 使用const 使函数能够处理const 和非const类型实参,否则只能接受非const 数据。
    3. 使用const 引用使函数能够正确生成并使用临时变量。

    引用非常适合用于结构和类。

     是否应使用引用的两个依据:程序员能够修改调用函数中的数据对象;通过传递引用而不是整个数据对象,可以提高程序的运行速度。

  • 相关阅读:
    win7 IIS配置及设置
    JS高效关键字搜索转
    CLR读书笔记第四章 类型基础
    SQL语句执行顺序
    JS常用方法转
    js 设置url参数转
    随机生成 字体大小转
    jquery获得select option的值 和对select option的操作转自(紫寒)
    前端开发者基本要求转
    2 Request对象的一些属性等
  • 原文地址:https://www.cnblogs.com/babysunnie/p/3198538.html
Copyright © 2020-2023  润新知