博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
读书笔记之:Efficient C++ 提高C++性能的编程技术(2003)[++]
阅读量:6307 次
发布时间:2019-06-22

本文共 827 字,大约阅读时间需要 2 分钟。

第1章 跟踪范例

第2章 构造函数和析构函数

第3章 虚函数

1. 虚函数造成的性能损失

第4章 返回值优化

任何时候只要跳过了对象的创建和清除,就将会获得性能上的收益。返回值优化RVO(Return Value Optimization)是由编译器实现的优化,它用于加速源代码,是通过对源代码进行转化并消除对象的创建来实现的。

1. 按值返回的构造

下面是Complex类:

class Complex{
    friend Complex 
operator+(
const Complex &,
const Complex&);
    
public:
    Complex(
double r=
0.0,
double i=
0.0):real(r),imag(i){}
    Complex(
const Complex& c):real(c.real),imag(c.imag){}
    Complex& 
operator=(
const Complex& c){
        
if(
this!=&c){
            real=c.real;
            imag=c.imag;
        }
        
return *
this;
    }
    ~Complex(){}
    
private:
    
double real;
    
double imag;
};
Complex 
operator+(
const Complex&a,
const Complex& b){
    Complex ret;
    ret.real=a.real+b.real;
    ret.imag=a.imag+b.imag;
    
return ret;
}                                                         

 

2. 返回值优化

3. 计算性构造函数

第5章 临时对象

1. 对象的定义

2. 类型不同时的类型转换

3. 按值传递

第6章 单线程内存池

第8章 内联基础

1. 方法调用的代价

引用计数

 

转载于:https://www.cnblogs.com/xkfz007/archive/2012/08/19/2646795.html

你可能感兴趣的文章
ssh
查看>>
订单的子单表格设置颜色
查看>>
Office365 Exchange Hybrid 番外篇 ADFS后端SQL群集(一)
查看>>
9个offer,12家公司,35场面试,从微软到谷歌,应届计算机毕业生的2012求职之路...
查看>>
lvs fullnat部署手册(三)rs内核加载toa篇
查看>>
C++策略模式
查看>>
我的友情链接
查看>>
oracle表分区详解
查看>>
网络编程中常见结构体
查看>>
SSL/TLS原理详解
查看>>
Docker 自定义SSH服务镜像
查看>>
JavaScript强化教程 —— Cocos2d-JS自动JSB绑定规则修改
查看>>
configure: error: in `/root/httpd-2.2.11/srclib/apr': c
查看>>
CentOS7搭建Kubernetes-dashboard管理服务
查看>>
buildroot下查找外部编译器通过ext-toolchain-wrapper调用的参数
查看>>
MySQL Replication 主主配置详细说明
查看>>
Linux的任务调度
查看>>
在Android studio中添加jar包方法如下
查看>>
iframe 在ie下面总是弹出新窗口解决方法
查看>>
分享10款漂亮实用的CSS3按钮
查看>>