1 左值和右值:
左值:具名,可取地址并访问,可以对其进行赋值
右值:不具名,不可取地址,不可对其进行赋值
2 ++i和i++的区别
++i直接在变量上自增
i++先拷贝一份变量,自增后重新赋值给原变量
3 作用域覆盖,内外作用域嵌套
4 引用和指针的底层实现是一样的,引用绑定对象后不能改变,指针可以改变
5 分离式编译的概念,将代码分割到多个程序中
6 默认实参
形式:string screen(sz ht = 24, sz wid = 80, char backgrd = '');
7 内联
内联函数可以解决普通函数如下问题:
调用前保存寄存器,并恢复
可能会拷贝实参
程序计数器的跳转
8 constexpr
作用:能用于常量表达式的函数
适用时的约束:函数的返回类型及所有的形参都得是字面值,函数体中有且只有一条return语句,这样做事为了实现便编译器的推导。
9 常量表达式:
定义:值不会改变,且在编译过程中就能得到计算结果的表达式