bigo bilibili 面试记录
c++:
初始化列表:
除了性能问题之外,有些时候合初始化列表是不可或缺的,以下几种情况时必须使用初始化列表
1.常量成员,因为常量只能初始化不能赋值,所以必须放在初始化列表里面
2.引用类型,引用必须在定义的时候初始化,并且不能重新赋值,所以也要写在初始化列表里面
3. 没有默认构造函数的类类型,因为使用初始化列表可以不必调用默认构造函数来初始化,而是直接调用拷贝构造函数初始化
1.常量成员,因为常量只能初始化不能赋值,所以必须放在初始化列表里面
2.引用类型,引用必须在定义的时候初始化,并且不能重新赋值,所以也要写在初始化列表里面
3. 没有默认构造函数的类类型,因为使用初始化列表可以不必调用默认构造函数来初始化,而是直接调用拷贝构造函数初始化
继承权限
weak ptr怎么防止sharedptr的循环引用:https://www.cnblogs.com/WindSun/p/11444429.html
有名称的、可以获取到存储地址的表达式即为左值;反之则是右值。
volatile关键字什么作用:volatile提醒编译器它后面所定义的变量随时都有可能改变,因此编译后的程序每次需要存储或读取这个变量的时候,都会直接从变量地址中读取数据。如果没有volatile关键字,则编译器可能优化读取和存储,可能暂时使用寄存器中的值,如果这个变量由别的程序更新了的话,将出现不一致的现象。
内联函数
指针和引用区别,sizeof大小
强制类型转换
std::move():std::move 会无条件将自己的参数转换为右值。在对象拷贝的时候,在运行时,它们不会产生一行代码, 可以减少资源创建和释放。
中序遍历非递归算法
字符串匹配dp
#互联网求职##面试题目##BIGO#