博客专栏  >  编程语言   >  Effective C++编程

Effective C++编程

记录《Effective C++ 中文版 第二版》、《Effective C++中文版 第三版》、《More Effective C++中文版》。以及自己经常看到的一些使用技巧。

关注
0 已关注
19篇博文
  • Lazy Evaluation

    1、引用计数 M29 2、区别对待读取和写入 M30 3、Lazy Fetching(懒惰提取) 4、懒惰表达式计算

    2018-04-02 21:10
    18
  • 区分接口继承和实现继承

    这里主要是理解基类中声明为纯虚函数、虚函数、和非虚函数的区别,主要是为了告诉派生类什么信息呢?

    2018-03-22 17:02
    21
  • C++虚函数要点合集

    参考: https://blog.csdn.net/lihao21/article/details/50688337 1、动态类型与静态类型 静态类型:指不需要考虑表达式的执行期语义,仅分析程序...

    2018-04-03 22:09
    34
  • malloc/free与c++中new/delete、operator new/operator delete与placement new的区别?

    malloc/free与new/delete 相同点 二者都可以从堆中申请和分配动态内存,并且二者都必须成对匹配使用。new/delete和malloc/free必须配对使用,才可以正确...

    2018-01-14 17:15
    87
  • C++给类实现内存池的功能

    1、为什么需要重写operator new 和operator delete 默认的operator new 具有很好的通用性,可以分配任意大小的内存块。operator delete也可以释...

    2018-02-02 00:44
    58
  • 初始化列表问题

    1、多多使用初始化列表进行初始化 const和引用数据成语只能初始化,不能被赋值 对于含有基类的类,基类构造函数总是被调用。 当有大量的固定类型的数据成员需要初始化的时候,可以使用在构造函数体内铜...

    2018-02-05 11:33
    51
  • C++多态及虚析构函数

    14、M24、M26、33、35和M33、36 http://blog.csdn.net/lihao21/article/details/50688337 http://blog.jobbole....

    2018-02-10 22:13
    54
  • 赋值运算符重载(operator=)注意事项

    1、返回*this引用 类中定义自己的赋值运算符时,必须返回赋值运算符左边参数的引用( *this)。如果不这样做,就会导致不能连续赋值,或导致调用时的隐式类型转换不能进行,或两种情况同时发生。 ...

    2018-02-27 11:10
    44
  • 类设计与声明之实现用户自定义下标上下限的数组

    占楼。。设计并技术高效编程的规则。

    2018-02-27 16:36
    29
  • 类设计与声明之实现有理数类

    占楼,学习并设计规则。 http://blog.csdn.net/qq_38238112/article/details/77416146 http://blog.csdn.net/chenkan...

    2018-02-27 16:37
    40
  • 类设计与声明之实现string类

    占位,实现简单的mystring,结合高效编程。 http://blog.csdn.net/yusiguyuan/article/details/45816531

    2018-02-27 19:51
    24
  • 避免对指针和数字类型重载以及潜在的二义性

    指针和数字类型都是数字,避免重载两种类型,否则可能产生不可避免的麻烦。

    2018-02-27 20:07
    36
  • 尽量用const、inline、enum代替宏定义

    1、宏定义发生在预处理阶段采用符号直接替换原则。当设计这方面代码出错,有时候会令人费解。所以在C++里面尽量通过const和inline代替定义常量的宏定义。 #define PI 3.1415...

    2018-02-01 12:25
    73
  • new失败如何处理

    需要搞清楚空间配置器之前必须分清楚C++中各种内存分配和释放的区别? 这里的问题就是当new分配内存失败该怎么办? 现在讨论的方法,在STL内存分配中使用了很多。 new是通过调用对应的op...

    2018-02-01 20:50
    75
  • 动态分配内存的类定义拷贝构造函数和赋值运算符、C++幕后所做的事情以及禁止这些

    1、C++编译可能默认生成一些函数 通过它的时候。如果自定义类没有声明下列函数,C++编译器会声明自己的版本。这些函数是:一个拷贝构造函数,一个赋值运算符,一个析构函数,一对取址运算符。另外,...

    2018-02-02 20:53
    57
  • 指针和引用

    1、引用 引用必须初始化 引用就是给对象取一个别名。定义引用,程序把引用和它的初始值绑定在一起(绑定之后不可再绑定其他对象),而不是初始值拷贝引用,为了完成对应的绑定,引用必须初始化。引用类型必...

    2018-02-02 21:17
    35
  • C++中const的重要性

    const 1、通过const你可以通知编译器和某些程序员某个值要保持不变,然后编译器具体实施这种约束。对于指针可以使用双重const。 2、让函数返回一个常量值,可以减少用户的出错几率。 ...

    2018-02-03 12:22
    55
  • C++中临时对象产生

    临时对象 临时对象是看不见的,它们不出现在你的源代码中。在栈上建立一个没有命名对象叫做临时对象。临时对象产生和释放都会对应构造函数和析构函数的调用。一切都是函数的调用而已。 1、为了使得函...

    2018-02-03 19:54
    108
  • 类型转换及类型转换函数

    所以类型转换,就是为了告诉编译器这部分内存,应该用什么方式去解释它,如何组织这段内存。 1、C风格类型转换 c语言比较熟悉,指针类型的转换很常见。通过圆括号和标识符组成(type) ex...

    2018-02-03 21:31
    106
img博客搬家
img撰写博客
img发布 Chat
img专家申请
img意见反馈
img返回顶部