(1) 逗号运算符 确保先计算第一个表达式,然后计算第二个
i = 20, j = 2 * i; //j = 40
i = 17, 240; //(i = 17), 240
i = (17, 240); //i = 240
(3) 在控制台中打印出bool的结果为true/false, 而不是1/0
bool iTrue = true;
cout << boolalpha << iTrue << endl;
(4) 头文件中包含警卫,避免单个.cpp文件期间一个头文件被多次包含
//Simple.h
#ifndef SIMPLE_H
#define SIMPLE_H
//body of header file here
#endif //SIMPLE_H
(5) 保证类型安全的链接属性(Type-safe linkage)
//Function definition
void f(int) {}
//Function misdeclaration
void f(char);
int main() {
// f(1); //Cause a linker error
}
(6) <cassert> assert作用是先计算表达式expression,如果其值为假,那么现象stderr打印一条出错信息,然后调用abort终止程序。
缺点:频繁调用会极大影响程序的性能,增加额外的开销。
在调试结束后,可以通过在包含#include<cassert>的语句之前出入#define NDEBUG来禁用assert调用。
(7) <cstdlib> 类型转换
atoi() 将ASCII字符转换成int
atol()将ASCII字符转换成long
atof()将ASCII字符转换成float
498



被折叠的 条评论
为什么被折叠?



