JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle Solaris Studio 12.3:C++ 用户指南     Oracle Solaris Studio 12.3 Information Library (简体中文)
search filter icon
search icon

文档信息

前言

第 1 部分C++ 编译器

1.  C++ 编译器

2.  使用 C++ 编译器

3.  使用 C++ 编译器选项

第 2 部分编写 C++ 程序

4.  语言扩展

5.  程序组织

6.  创建和使用模板

7.  编译模板

8.  异常处理

9.  改善程序性能

9.1 避免临时对象

9.2 使用内联函数

9.3 使用缺省运算符

9.4 使用值类

9.4.1 选择直接传递类

9.4.2 在不同的处理器上直接传递类

9.5 缓存成员变量

10.  生成多线程程序

第 3 部分库

11.  使用库

12.  使用 C++ 标准库

13.  使用传统 iostream

14.  生成库

第 4 部分附录

A.  C++ 编译器选项

B.  Pragma

词汇表

索引

9.2 使用内联函数

使用扩展内联而不使用正常调用时,对小而快速的函数的调用可以更小更快速。反过来,如果使用扩展内联而不建立分支,则对又长又慢的函数的调用会更大更慢。另外,只要函数定义更改,就必须重新编译对内联函数的所有调用。因此,使用内联函数时要格外小心。

如果预计函数定义会更改而且重新编译所有调用程序非常耗时,请不要使用内联函数。而如果扩展函数内联的代码比调用函数的代码少,使用函数内联时应用程序执行速度显著提高,则可以使用内联函数。

编译器不能内联所有函数调用,因此要充分利用函数内联,可能需要进行一些源码更改。可使用 +w 选项了解何时不会进行函数内联。在以下情况中,编译器将不会内联函数: