C++ PrimerPlus第8章 函数探幽

C++ PrimerPlus第8章 函数探幽

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

8.1 C++内联函数

	为了提高程序运行速度。和常规函数的主要区别在于C++编译器如何将它们组合到程序中。
	编译器将使用相应的函数代码替换函数调用。对于内联代码,程序无需跳到另一个位置处执行代码,再跳回来。因此,内联函数的运行速度比常规函数稍快,但代价是需要占用更多内存。
	应当选择地使用内联函数。如果代码执行时间比处理函数调用机制的时间长,则节省的时间将只占整个过程的很小一部分。如果代码执行时间很短,则内联调用就可以节省非内联调用使用的大部分时间。另一方面,由于这个过程相当快,因此尽管节省了该过程的大部分时间,但节省的时间绝对值并不大,除非该函数经常被调用。
	要使用这项特征,必须采取下述措施之一:
	在函数声明前加上关键字inline;
	在函数定义前加上关键字inline。 
	通常的做法是省略原型,将整个定义(即函数头和所有函数代码)放在本应提供原型的地方。
	程序员请求将函数作为内联函数时,编译器不一定会满足这种要求。它可能认为该函数过大或注意到函数调用了自己(内联函数不能递归),因此不将其作为内联函数;而有些编译器没有启用或实现这种特性。
	如果函数定义占用多行(假定没有使用冗长的标识符),则将其作为内联函数就不太合适。

8.2 引用变量

c++新增了一种复合类型——引用变量。引用是已定义的变量的别名(另一个名称)。引用变量的主要用途是用作函数的形参。

8.2.1 创建引用变量
前面讲过,C和C++使用&符号来指示变量的地址。C++给&符号赋予了另一个含义,将其用来声明引用。
引用和指针的不同:
1.表示方法不同
2.引用必须在声明引用时将其初始化,而不能像指针那样,先声明,再赋值。
3.引用更接近const指针,必须在创建时进行初始化,一旦与某个变量关联起来,就将一直效忠于它。

8.2.2将引用用作函数参数
引用经常被用作函数参数,使得函数中的变量名成为调用程序中的变量的别名。这种传递参数的方法称为按引用传递。按引用传递允许被调用的函数能够访问调用函数中的变量。
在这里插入图片描述

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页