什么是左值引用和右值引用
- 可取地址的是左值,不可取地址的是右值。
- 左值引用是借用,右值引用是接管。
C++ move 的作用和原理?
- 核心作用:将对象的资源所有权从一个对象“转移”到另一个对象,避免不必要的深拷贝,提高程序性能。
- 原理:std::move 只是类型转换工具,不会实际移动数据,真正的移动逻辑由类的移动构造函数或移动赋值运算符决定。
static 关键字的作用?什么场景下用?
static 用于控制变量或函数的作用域和生命周期。
<ol>修饰局部变量(函数内部)
- 在函数作用域内可见,但只会初始化一次,生命周期贯穿整个程序。
- 使用场景:记录函数调用次数,实现懒加载。
[code]#include using namespace std;void func() { static int count = 0; // 只在第一次调用 func 时初始化 cout |