![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Effective C++ 读书笔记
文章平均质量分 77
roseisbule
对科技感兴趣的学习者
展开
-
条款04 确定对象被使用前已经初始化
参考这句C++: , 在某些语境下, x 是会被初始化为 0 的, 但是某些语境下并不能保证:有的时候, t 会将内部的 x 和 y 进行初始化, 有的时候又不会.读取没有初始化的变量会导致一些奇怪的行为, 这些行为是未被定义的. 比如指针没有初始化, 他或许不会初始化为 , 当你去访问这个地址时, 可能就导致了未知的错误和让人非常不愉快的调试出现. 现在我们有了一个规则: 读取未被初始化的变量, 结果是未知的.这是一个无法决定的事情, 相当于程序员把自己编写的程序的命运交给编译器. 其实有一个非常好原创 2023-04-30 22:44:52 · 184 阅读 · 1 评论 -
Effective C++读书笔记(3) 条款03 尽可能使用const
解决方法可以是使用一个标记位判断是否有效, 但是这种有效也是会在 const 接口函数中改变的, 所以并不可以被坚持要 bitwise constness 的编译器同意. 这时可以利用 C++ 的一个和 const 相关的摆动场 mutable, mutable 会告诉编译器这个成员是 const 但是, 他还是有可能会被改动, 所以编译器会进行放行. const最具威力的用法是和函数声明结合, 在一个函数声明中可以和函数返回值, 各参数值, 函数自身(如果是成员函数的话)产生关联.原创 2023-04-24 23:30:49 · 155 阅读 · 0 评论 -
Effective c++阅读笔记(0) 序章
“c++程序员可以分成两类,读过effective c++的和没读过的。”世界顶级c++大师scott meyers这部成名之作,与这句话一道在全球无数读者间广为传颂。几乎所有c++书籍推荐名单上﹐《effective c++:改善程序与设计的55个具体做法:第3版》都会位列三甲。作者高超的技术把握力、独特的视角﹑诙谐轻松的写作风格﹑独具匠心的内容组织﹐都受到极大的推崇和仿效。 对于国外技术图书,选择翻译版还是影印版,常让人陷入两难。原创 2023-04-20 18:13:15 · 63 阅读 · 0 评论 -
Effective C++读书笔记(2) 条款02 尽量用const, enum, inline 代替 #define
此时, 有些编译器就会(错误地)报出编译错误, 认为必须要知道初始值, 也就是必须要知道数组开了多大. 我们来分析一下为什么会这样, #define 的处理在预处理阶段, 编译器工作在预处理后, 代表如果粗暴替换了 30, 那么编译器会很明显地知道需要开多大, 而如果是一个变量, 那么就认为不知道要开多大了. 我认为, 这样做不正确, 这样就导致了, 我们没办法去让程序自己根据情况去开多大, 而是必须要提前设置好.这里还有一些问题, 你是否认为, x 和 num 在类内都是被定义式定义的?原创 2023-04-20 18:16:54 · 147 阅读 · 0 评论 -
Effective c++读书笔记(1) 条款01 视C++为一个语言联邦
而 C++ 的诞生, 为 C 引入了类的用法, 在最开始的时候, C++ 就是一种有着类的 C 语言, 但是当之后这门语言逐渐成熟时, 它也变得更加的活跃, 更大胆, 更冒险, 开始接受各种不同的观念. 现在的 C++ 其实已经很难讲就是单纯一门有着类的 C 语言了, 尤其是模板(template)和STL的引入, 几乎把我们带到了一个全新的设计和思考方式. 其实使用 C++ 就可以认为是在上面几种次语言进行切换, 当理解了四个次语言后, 对于 C++ 的理解就会更简单.也反映了这个血缘关系.原创 2023-04-20 18:14:26 · 261 阅读 · 0 评论