读书笔记
文章平均质量分 65
77CHONG77
聪明人也需要笨方法
展开
-
【Effective C++读书笔记】序
C++ 是一个难学易用的语言!【C++为什么难学?】C++的难学,不仅在其广博的语法,以及语法背后的语义,以及语义背后的深层思维,以及深层思维背后的对象模型;C++的难学还在于它提供了四种不同而又相辅相成的编程模型(programming paradigms):procedural-based(基于过程)object-based(基于对象)object-oriented(面向对象)gener原创 2015-06-24 11:00:13 · 516 阅读 · 0 评论 -
【Effective C++ 读书笔记】导读 Introduction
学习程序语言根本大法是一回事,学习如何以某种语言设计并实现高效程序则是另一回事。一组明智选择并精心设计的classes、functions、templates可使程序编写容易、直观、高效、并且远离错误。带着问题去品读这本经验著作:设计上的讨论: “如何在两个不同的做法中择一完成某项任务?”选择继承(inheritance) or 模板(templates)?选择public继承还是privat原创 2015-06-24 16:47:27 · 375 阅读 · 0 评论 -
【Effective c++ 读书笔记】条款01 视 C++ 为一个语言联邦
一开始,C++只是 C 加上一些面向对象的特性。C++最初的名称 C with Classes 也反映了这个血缘关系。但是,现在,当这个语言逐渐成熟,它变得更活跃更无拘束,更大胆冒险,开始接受不同于 C with Classes 的各种观念、特性和编程战略。 今天的 C++ 已经是个多重泛型编程语言,一个同时支持过程形式、面向对象形式、函数形式、泛型形式、元编程形式的语言。那,我们又该如何原创 2015-06-24 23:22:46 · 496 阅读 · 0 评论 -
【Effective C++ 读书笔记】条款02: 尽量以 const, enum, inline 替换 #define
这个条款或许可以改为“宁可以编译器替换预处理器”。如果你做出这样的事:#define ASPECT_PATIO 1.653记号名称 ASPECT_PATIO 从未被编译器看见;也许在编译器开始处理源代码之前它就被预处理器移走了。于是记号名称 ASPECT_PATIO 有可能没有进入符号表(symbol table)内。于是,当你运用此常量但获得一个编译错误信息时,可能会带来困惑。因原创 2015-07-04 12:06:44 · 441 阅读 · 0 评论 -
【Effective C++ 读书笔记】条款04:确定对象使用前已先被初始化
永远在使用对象之前先将它初始化。对于无任何成员的内置类型,你必须手工完成此事。至于内置类型以外的任何其他东西,初始化责任落在构造函数身上。规则很简单:确保每一个构造函数都将对象的每一个成员初始化。构造函数成员初始化列表: 这里有一个规则:总是在初始化列表中列出所有成员变量,即使有的成员变量是内置类型(内置类型的初始化和赋值成本相同)。成员初始化顺序 base classes 早于 derived原创 2015-07-06 21:50:40 · 424 阅读 · 0 评论 -
【Effective C++ 读书笔记】条款03: 尽量使用 const
关键字const多才多艺,变化多端却不高深莫测。const 修饰指针 面对指针, 你可以指出 指针自身、指针所指物、或者两者都不是 const。如果关键字 const 出现在星号左边,表示被指物是常量。 (const 出现在类型之后,星号之前 ,同上边两者意义相同) 如果出现在星号 右边,表示指针自身是常量。 如果出现在星号两边,表示被指物和指针两者都是常量。char greeting[ =原创 2015-07-06 20:28:08 · 418 阅读 · 0 评论