Day3:
1、数组未初始化问题:
1.全局变量数组未初始化,则其默认值全为0;
2.局部变量数组未初始化,则其默认值为-858993460(垃圾值)
原因:
1)全局变量、静态变量处于数据区,未初始化,默认值为0 。
2)局部变量处于堆栈区,其数值是随机的,即当时内存中的值。
3、switch语句的格式注意!break后面要加分号。
4、在C语言中,if语句后的一对圆括号中,用以决定分支流程的表达式可为任何表达式,
任何表达式都可以等价为真或者假。只要为真就执行,为假就不执行。
5、某友元类的所有成员函数可以存取或者修改该类中的私有成员。
即:友元类和本类的权限是一样的。
6、字符串“a+b=12\n”的长度为:7 转义字符与后面的一个字符共占一个字节。
字符串占空间数包含\0 但是字符串长度(用strlen计算)不包含\0
比如"abcd"
对其做strlen返回4
但是做sizeof计算则返回5
7、友元函数:可以直接调用类的私有成员,类中声明带friend,它不属于任何类,他是定义在类外的普通函数。
8、decltype关键字的作用:
1.计算表达式的类型
2、对于函数表达式,decltype将返回该函数返回值的类型,
对于左值表达式,decltype返回该表达式的左值引用。
注意:decltype((variable))(注意是双层括号)的结果永远是引用,
而decltype(variable)的结果只有当variable本身是一个引用时才是引用