最近一段时间在工作中或看书遇到的一些关于C++有意思的知识记录成本文。包括i++和++i的左右值问题、无符号和有符号比较、C++正则库中 regex_match 的坑、shared_ptr 的妙用: copy-on-other-reading、协变返回类型、switch case 语句 break 的使用、将new对象初始化指针放在独立语句、std::stack为何提供pop和top两个函数而不是合二为一。
一些我竟然不知道的C++相关知识 - 这都不知道「持续更新」
一些C++从C语言继承的好用特性 - C++基础
阅读《嵌入式C语言自我修养 - 从芯片、编译器到操作系统》1这本书时学习到了很多C语言中的有用特性,让人不禁感慨C语言也在与时俱进。这些特性在C++中也完全可以使用,学了也不白学,在工作上有用武之地。另外对于宏定义这种功能可以生成代码增加键盘寿命,相较于C++模板晦涩难懂,宏更直观。这次也一并系统的学习宏并且记录成本文。不过需要注意的是有些特性并不是C++标准直接支持而是编译器扩展支持,所以用这些特性会丧失可移植性。
右值、右值引用、万能引用与完美转发 - C++基础
设计模式基础 - 《设计模式的艺术》读书笔记【1】
设计模式是我曾经想学但没学,后来不屑于学的技术。工作中遇到项目的重构不会设计模式就显得力不从心了,此次迟来的系统学习期望能带来实际工作中可以用到的启发。主要是阅读刘伟写的《设计模式的艺术:一本实例驱动的设计模式实践指南》1这本书。