[C/C++]《Effective C++》读书笔记

0 导读
    缩写:构造函数ctor 析构函数 dtor
 
1 让自己习惯C++
    C++次语言:C, Object_Oriented C++, Template C++, STL
    以const, enum, inline替换#define
    const 成员函数承诺绝对不改变其对象的逻辑状态, const 成员函数调用non-const是错误行为
    
2 构造/析构/赋值运算
    copy构造函数/copy assignment只是将每一个non-static成员变量拷贝至目标对象
    任何class只要带有virtual函数都几乎确定应该有一个virtual析构函数
    string,vector,list,set,unordered_map不带virtual析构函数
3 资源管理
    RAII(Resource Acquisition Is Initialization) 资源取得时机便是初始化时机
        std:auto_ptr<Investment> PInv(CreateInvestment())
    RCSP(reference-counting smart pointer) 引用计数型智慧指针 shared_ptr<T>.
4 设计与声明
    cross-DLL problem:对象在动态链接程序库(DLL)中被new创建,却在另一个DLL内被delete销毁。
    内置类型,迭代器,函数对象:pass by value;其他:pass by reference to const

5 实现
    references,指针和迭代器都是handles(用于取得某个对象)

 

posted @ 2014-10-20 08:38  skycore  阅读(438)  评论(0编辑  收藏  举报