1.if判断 最好值放 == 左边 :
if( 100 == a){ //可以有效防止 a=100这种代码错误
//TODO
}
2. auto 自动推导类型
auto age = 35; //建议优先使用
**3.逐位与或非不建议用于 if 判断,不会产生短路
4.常量
const int x{0}; //运行时常量,涉及到传递的常量使用场景
constexpr int cx{1} //编译时常量
5.枚举
enum class Level
{
DEBUG, //默认0,后自增1
RELEASE,
TEST = 3, //也可赋值,后面的在这个基础上增1
};
(int)Level::DEBUG //访问方式
6.数组
栈数组:
int arr[10] //字面量不支持变量,支持constexpr,代码块结束释放
sizeOf() / sizeOf(int) //除以类型
堆数组
int* arr = new int[4] ; //可以自己控制空间大小
delete []arr; //手动释放
arr = nullptr;
容器数组
#include <vector>
std:vector
//vector<元素类型> 变量名(初始化数量)
vector<int> v();
v.size()// 获取大小 增加内容会自动扩充
7.全局变量
全局变量:全文件有效 进入main函数前申请空间
静态全局变量:声明周期是全局,作用域仅限于本文,进入main函数前申请空间 static int count =0;
局部静态变量:方法内 执行代码内申请,销毁于整个main函数结束
8.指针和引用
9.函数
如果形参不需要改变,定义成const
-
.h文件当中减少放全局变量和不使用引用。