目录
一、转发引用
template<class T>
void func(T&& x)//引用型别未定义
{
}
int main() {
int a=10;
const int b=20;
func(a);//左值引用
func(b);//左值常性引用
func(10);//右值引用
return 0;
转发引用 是 C++11 引入的特性,与完美转发(Perfect Forwarding)相关,用于在泛型编程中保留参数的原始类型(左值/右值、常量性等)。其核心语法是 T&&
,结合模板类型推导和引用折叠规则,可以将参数“原样”传递给其他函数。避免不必要的拷贝,同时正确处理左值/右值。
二、完美转发
完美转发(Perfect Forwarding) 是 C++11 引入的核心特性之一,用于在泛型编程中将参数 原封不动(保留其左值/右值、常量性等