1、使用构造/析构函数可以简化管理资源;
2、优先使用标准库的容器和算法;
3、优先使用标准库的特性而不是自己写的代码;
4、使用移动语义避免拷贝大的对象;
5、使用unique_ptr引用多态类型的对象;
6、使用shared_ptr引用共享对象;
7、使用模板保持静态类型安全(消除类型转换);
8、不要用宏定义,用const代替之;
9、当需要时再定义变量(局部),定义之后立刻初始化;
10、不要使用malloc()、free()等C语言函数,new、delete比它们更好;
11、尽可能地不使用数组和C语言风格的字符串(char * p = "xxxxxxxxx";),用标准库的array、vector、string更好;
12、除非在专门的代码(如内存管理器),或进行简单的数组遍历(++p),否则要避免对指针进行算术运算。
13、尽量不使用联合体(union)。
14、尽可能地在栈内存中创建对象。