c++ 里函数选择的优先级:普通函数、模板函数、万能引用,函数重载的常量左值引用、右值引用,编译器选择哪个执行呢?

看大师写的代码时,除了在类里定义了 copy 构造函数,移动构造函数,还定义了对形参采取万能引用的构造函数,因此有个疑问,这时候的构造函数优先级是什么样的呢?简化逻辑测试一下,如下图,先看不含万能引用的版本:

当又含有万能引用的构造函数呢?

因此,出现这种情况时,要注意编写的重载的构造函数的语义的一致性,避免出错。

(2)这是后来的补充:

以及:

以及

以及:

谢谢

相关推荐
多加点辣也没关系31 分钟前
JavaScript|第4章:类型转换
开发语言·javascript
聪慧的水蜜桃32 分钟前
【YFIOs】用C#开发硬件之设备上云
开发语言·c#
yqcoder1 小时前
httpOnly 是什么,又有什么用?
开发语言·前端·javascript
山登绝顶我为峰 3(^v^)31 小时前
C/C++ 交叉编译方法
java·c语言·c++
wuqingshun3141592 小时前
重写equals而不重写hashCode,会出什么问题?
java·开发语言
飞猪~2 小时前
LangChain python 版本 第一集
开发语言·python·langchain
李燚4 小时前
Go 项目怎么组织:DDD 4 层 vs MVC vs 脚本式
开发语言·golang·mvc·ddd·agent框架·eino
2zcode4 小时前
免费开源项目文档:基于MATLAB图像处理的啤酒瓶口缺陷检测系统设计与实现
开发语言·图像处理·matlab
人工智能时代 准备好了吗5 小时前
AI回答内容进入率监测:引用识别、文本匹配与语义判断
开发语言·人工智能·python
LONGZETECH5 小时前
新能源汽车动力电池检测仿真教学系统:C/S 分层架构与数字化实训落地全解析
大数据·c语言·开发语言·人工智能·架构·系统架构·汽车