第14条宁要编译时和链接时错误,也不要运行时错误
能够在编译时坐的事情,就不要推迟到运行时。
第15条积极使用const
第16条避免使用宏
宏是C和C++语言的抽象设施中最生硬的工具,它是披着函数外衣的饥饿的狼,很难驯服,它会我行我素地游走于各处。要避免使用宏。
在C++中几乎从不需要用宏。可以用const或者enum定义易于理解的常量,用inline避免函数调用的开销,用template指定函数系列和类型系列,用namespace避免名字冲突。
宏会忽略作用域,忽略类型系统,忽略所有其他的语言特性和规则,而且会劫持它为文件其余部分所定义的符号。宏调用看上去很像符号或者函数调用,但实际上并非如此。
第17条避免使用“魔数”
第18条尽可能局部地声明变量