C++核心准则ES.6:将循环变量和条件变量定义在限定范围内

编译器 FLAG


C++核心准则ES.5: 尽量压缩作用域

FLAG 豪利时 庄冬昕


C++核心准则ES.2: 适当的抽象好于直接使用语言功能

0verflow


C++核心准则ES.1: 标准库好于其他库和手写代码

算法


C++核心准则R.37: 不要使用从破损的智能指针​获取的指针或引用

reference local call 智能 obtained 引用 获取


C++核心准则R.36: 使用const shared

const ptr reference might retain function R.36


ptr<widget>&参数表示函数重置智能指针

const function widget parameter Unique 重置 reseat


C++核心准则R.32: 通过​unique

const function parameter ownership Unique pointer R.32


C++核心准则R.30: 只有在包含生命周期语义时使用智能指针作参数

FLAG


C++核心准则R.24: 使用std::weak

std weak back cycles forward 循环 R.24


C++核心准则R.23: 使用make

C++ R.23 面向对象 ptrs shared new


C++核心准则R.22: 使用make

new R.22 than 面向对象 ptrs object use


C++核心准则R.21:不需要共享所有权时使用独占指针而非共享指针

base R.21 use function Shared pointer 面向对象


C++核心准则R.20: 使用unique

shared void new 面向对象 represent ownership ...


C++核心准则R.15: 应该成对重载分配和释放函数

FLAG


C++核心准则R.14: 避免使用[]参数,应该使用span

FLAG


C++核心准则:R.13: 在一个表达式中最多只执行一次显式资源分配

编译器 FLAG


C++核心准则R.12:立即将显式分配的资源交给资源管理对象​

FLAG


永远无法在游泳池里学会海战--【实战Python设计模式】新书介绍

设计模式 Python 设计 软件 软件开发过程 电脑 美好,一直在身边 程序员 人生第一份工作


Python语言中的设计模式

设计模式 Python 设计 软件 软件开发过程 程序员 电脑 美好,一直在身边 人生第一份工作


C++核心准则R.11:避免显示调用new和delete

调用 naked R.11 pointer 面向对象 指针 calling


C++核心准则:R.10: 避免使用macloc()和free()

FLAG


C++核心准则R.5: 范围对象不要在堆内存上构建​

local ... R.5 面向对象 范围 内存 示例


C++核心准则R.4: 原始引用(T&)不包含所有权

黄婷璟


C++核心准则R.3: 原始指针(T*)不应拥有所有权

黄婷璟


C++核心准则R.2: 接口中只在表示单独对象时使用原始指针​

编译器 FLAG


Arduino环境使用TM1638扩展版

Arduino


C++核心准则R.1: 使用资源句柄自动管理资源并RAII

资源 RAII delete destination my mutex ...


C++核心准则Enum.8:只在必要时指定枚举值

FLAG 迪吉多


C++核心准则Enum.7: 只在必要时定义枚举的底层类型

C语言


C++核心准则Enum.6:避免无名枚举

另类摇滚 FLAG


使用30元开发板UNO D1 R32构筑物联网开发环境

Arduino 物联网 UNO GitHub 硬件 软件 电脑 Java 集成开发环境 C语言 蓝牙


UNO D1 R32(ESP32)Arduino开发环境构筑

Arduino UNO GitHub 软件 硬件 Java 电脑 集成开发环境 蓝牙 物联网


C++核心准则Enum.5: 不要使用全部大写的枚举值

FLAG


C++核心准则Enum.4:为枚举类型定义运算符以便安全又简单地使用

FLAG INFINITE SAT


C + + 核心准则Enum.3:枚举类​要比普通的枚举类型好

blue class Print enum enums int red


C++核心准则Enum.2: 使用枚举表现一组相关的命名常量

编译器 FLAG


使用枚举类型表达一组相关常量

编译器 FLAG


C++核心准则Enum.1: 枚举类型比宏定义好

FLAG


C++核心准则C.183: 不要使用联合体实现双关类型

探路者


C++核心准则C.182:使用匿名联合体实现附带标签的联合体

设计 程序员 程序设计


C++核心准则C.181:避免使用"暴露的"联合体

另类摇滚


C++核心准则C.180:使用联合体节约内存

char str ptr memory const 联合体 C.180


C++核心准则C.170: 重载lambda表达式时使用泛型lambda表达式​

表达式 C.170 cannot ... 重载 泛型 feel


C++核心准则C.168: 将重载的运算符定义在操作对象的命名空间内

FLAG


02.25 永远不要将派生类数组赋值给基类类型指针

FLAG


多态对象应该通过指针或引用访问

FLAG


最好不要使用final关闭后续的覆盖函数

编译器 设计


02.16 使用Eclipse远程调试树莓派

Eclipse 树莓派 C语言 Ubuntu 鼠标


嵌入式C++远程调试环境

树莓派 Ubuntu 软件 Vi 编译器 PuTTY Sync Wi-Fi 美好,一直在身边 鼠标


使用树莓派构建嵌入式C++调试环境

树莓派 Ubuntu 软件 PuTTY Vi 编译器 Sync Wi-Fi 美好,一直在身边 鼠标


02.14 构建嵌入式C++开发环境

Linux GCC Eclipse ARM Ubuntu VirtualBox C语言 虚拟机 GT


02.11 分离接口继承和实现继承

FLAG


C++核心准则C.132:不要没有理由就将函数声明为虚函数

FLAG


避免无意义的getters和setters

欢聚时代 FLAG


C++核心准则C.131: 避免无意义的getters和setters

欢聚时代 FLAG


多态类复制时应该使用克隆

ptr 返回 copy type 派生类 virtual 多态


C++核心准则C.130:多态类深拷贝因该使用clone

ptr 返回 copy type 派生类 virtual 拷贝


实现继承和接口继承

面向对象程序编程


C++核心准则C.129:设计类层次关系时,区分实现继承和接口继承

设计 面向对象程序编程


明确虚函数的意图

编译器 F1赛车


01.31 C++核心准则C.127:包含虚函数的类应该有虚或保护析构函数

make 析构 class destructor pointer base function


01.30 使用抽象类定义接口

... override interface outbuf inbuf D1 D2


C++核心准则C.100:定义容器时遵从STL标准‍

设计 程序员 非常完美


自定义哈希不要抛出异常

size My 面向对象 抛出 异常 C.89 noexcept


编译器能做的事就让编译器去做

编译器


01.15 编译器能做的事就让编译器去做

编译器


01.04 C++核心准则C.50:如果在构造过程中需要“虚行为”,使用工厂函数

object class Token factory make ... create


12.29 C++核心准则C.44:默认构造函数最好简单而且不会抛出异常

艾丽美 FLAG


C++核心准则F.50:不愿意使用函数时使用lambda表达式

表达式 local int ... tasknum 使用 F.50


11.29 C++核心准则F.45 不要返回右值引用

编译器


C++核心准则边译边学-I.4 接口类型应该精准且严格

编译器 Numbers


访问者模式的结构

面向对象程序编程 设计 数据结构 算法 设计模式


Aha!设计模式(102)-策略模式(1)

设计模式 设计 面向对象程序编程 软件 算法