草庐IT

MyBigType

全部标签

c++ - 在重载函数的函数参数中使用右值引用会创建太多组合

假设您有许多重载方法(在C++11之前)看起来像这样:classMyClass{public:voidf(constMyBigType&a,intid);voidf(constMyBigType&a,stringname);voidf(constMyBigType&a,intb,intc,intd);//...};此函数会复制a(MyBigType),因此我想通过提供移动的f版本来添加优化a而不是复制它。我的问题是现在f重载的数量会重复:classMyClass{public:voidf(constMyBigType&a,intid);voidf(constMyBigType&a,st

c++ - 在重载函数的函数参数中使用右值引用会创建太多组合

假设您有许多重载方法(在C++11之前)看起来像这样:classMyClass{public:voidf(constMyBigType&a,intid);voidf(constMyBigType&a,stringname);voidf(constMyBigType&a,intb,intc,intd);//...};此函数会复制a(MyBigType),因此我想通过提供移动的f版本来添加优化a而不是复制它。我的问题是现在f重载的数量会重复:classMyClass{public:voidf(constMyBigType&a,intid);voidf(constMyBigType&a,st