`
insertyou
  • 浏览: 902046 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Effective C++ 读书笔记1

 
阅读更多

TMP 模板元编程

0.explicit构造函数比non-explicit构造函数好。

1.可以用const 来代替#define 定义一个常量。

#define没有作用域,也没有封装性。

但enum不可以取地址,而const 常量能取地址。因此指针或引用不能指向enum常量。

#define定义宏时,可以用template inline函数代替。

#ifdef/#ifndef 很重要。

const vector<int>::iterator pos; //类似T* const 即指向不变

vector<int>::const_iterator pos; //类似const T* 即指向的元素不变。

函数返回值后加const 为了避免意外发生。

成员函数如果常量性不同就可被重载。

编译器遵循bitwise constness准则。如果想要实现logical constness,则用mutable改变const值

bitwise constness:只要成员函数声明为const,则类中任何一个成员都不能变。

logical constness:对于客户来说不变即可。

当重载成员函数(只有const区别),则非const调用const函数为好,中间可进行强制转换。

在写函数时要考虑const。

面对成员变量为const或reference时,他们一定要初始化列表,而不是赋值。

构造函数用初始化列表初始化。

当构造函数的初始化和赋值效率差不多时,则创建private函数存放共同的部分,在多个构造函数中调用。

当两个类在不同编译单元中,当一个类要用到另一个类对象时,不知道初始化顺序,所以为了确保顺序,必须定义一个函数

当变为下面时,

/*A& A()
{
static A a;
return a;
}
*/

情况好转。

这就是传说的singleton模式。

改进版

分享到:
评论

相关推荐

    effective c++读书笔记

    从给出的部分内容来看,读书笔记主要聚焦于以下几个知识点: 1. C++语言的联邦概念:C++是一个由多个次语言构成的语言联邦,这包括了C语言核心、面向对象的C++、模板C++以及标准模板库(STL)。这种理解对于深入...

    effective C++ 读书笔记

    effective C++ 很好 很不错 最好的C++进阶资料

    effective C++读书笔记

    Effective C++读书笔记 本文总结了Effective C++读书笔记,涵盖了C++的四个主要次语言:C、Object-Oriented C++、Template C++和STL。同时,文章还讨论了高效编程守则,包括使用const、enum和inline替换#define,...

    effective C++ 读书笔记 PPT

    摘录了《Effective C++》 (Scott Meyers 著)中有参考价值的编写代码建议,方面阅读

    Effective Modern C++学习笔记

    《Effective Modern C++:改善C++11和C++14的42个具体做法(影印版)(英文版)》中包括以下主题:剖析花括号初始化、noexcept规范、完美转发、智能指针make函数的优缺点;讲解std∷move,std∷forward,rvalue引用和全局...

    精版Effective STL读书笔记

    根据给定的文件信息,以下是对“精版Effective STL读书笔记”的详细解析,重点提炼了STL(标准模板库)中的关键知识点。 ### 标题:“精版Effective STL读书笔记” 此标题暗示了文档是针对《Effective STL》一书的...

    Effective C++学习笔记

    Effective C++是一本深入探讨C++编程实践的书籍,它提供了许多提高代码质量和效率的建议。以下是基于标题、描述和部分内容的关键知识点: 1. **虚函数的声明与使用**: - 在C++中,虚函数是实现多态性的关键。它们...

    Effective C++学习笔记.doc

    自己整理的侯捷版本&lt;&lt;Effective C++ 改善程序与设计的55个具体做法&gt;&gt; 学习笔记.

    effective c++笔记1

    Effective C++笔记1 本笔记总结了Effective C++的第1到第11条款,涵盖了C++语言的多个方面,包括构造函数、拷贝构造函数、拷贝赋值函数、const关键字、enum、inline函数、定义域、static变量、初始化、编译器生成的...

    Effective C++第三版及详细笔记

    内容简介:有人说C++程序员可以分为两类,读过Effective C++的和没读过的。当您读过《Effective C++:改善程序与设计的55个具体做法(第3版)(中文版)(双色)》之后,就获得了迅速提升自己C++功力的一个契机。

    Effective C++笔记1

    Effective C++笔记1 本笔记概括了 Effective C++ 中的四十个规则的第一个部分,涵盖了 C++ 语言的基本概念、const 的使用、inline 函数的应用、对象的初始化等方面。 规则 1:将 C++ 视为语言联合体 -------------...

    Effective C++ Roy T 读书笔记。

    《Effective C++》是Scott Meyers撰写的一本经典C++编程指南,旨在帮助开发者写出更高效、更可维护的代码。这本书由一系列的编程实践建议组成,每一条建议都被称为一个"项",覆盖了C++语言的多个方面,包括对象、类...

    Effective_C++_3rd笔记.pdf

    ### Effective_C++_3rd笔记的关键知识点概览 #### 视C++为一个语言联邦(条款01) C++作为一门复杂且功能丰富的语言,它实际上涵盖了多种编程范型,包括过程式、面向对象、函数式、泛型以及元编程。这种多样性的...

    effective C++ (3rd) 学习笔记

    通过这些学习笔记,我们可以了解到《Effective C++》不仅为我们提供了C++编程中的一些基本和高级技巧,也教会我们如何遵循最佳实践,编写出更加高效、健壮的C++代码。学习这些知识点,对于提高C++编程能力和解决实际...

    Effective_C++_笔记

    通常C++要求你对所使用的任何东西提供一个定义式,但如果它是个class专属常量 又是static且为整数类型(integral type,例如int,char,bool),则可特殊处理。只要不取它们 的地址,你可以声明并使用它们而无需提供...

    Effective_C++3 学习笔记.pdf.rar

    1. **对象构造与析构**:笔记会讲解C++中对象的生命周期,包括构造函数的作用、默认构造函数、拷贝构造函数和移动构造函数的选择与优化,以及如何利用析构函数来清理资源。 2. **资源管理**:C++中的智能指针(如...

    C++Primer笔记1

    【C++ Primer 笔记1】 C++ 是一种强大的编程语言,它有着丰富的特性和严格的类型系统。在学习C++时,了解并掌握其基本概念和技术是非常重要的。本笔记主要涵盖了C++的一些关键知识点,包括预处理器、类型系统、命名...

Global site tag (gtag.js) - Google Analytics