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

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

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

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

(2)这是后来的补充:

以及:

以及

以及:

谢谢

相关推荐
froginwe1114 小时前
jQuery UI 小部件方法调用
开发语言
信奥胡老师14 小时前
B3930 [GESP202312 五级] 烹饪问题
开发语言·数据结构·c++·学习·算法
许长安14 小时前
Redis 跳表实现详解
数据库·c++·经验分享·redis·笔记·缓存
JAVA学习通14 小时前
安脉盛 软件后端开发实习面经
java·开发语言
sycmancia14 小时前
Qt——Qt中的事件处理(一)
开发语言·qt
paeamecium14 小时前
【PAT甲级真题】- Shortest Distance (20)
数据结构·c++·算法·pat考试·pat
Halo_tjn14 小时前
Java IO流文件操作
java·开发语言
折哥的程序人生 · 物流技术专研15 小时前
《Java 100 天进阶之路》第23篇:缓冲区数据结构 ByteBuffer
java·开发语言·数据结构·后端·面试·求职招聘
REDcker15 小时前
C++循环与编译器优化详解 别名不变量向量化与GCC Clang验证及perf实践
java·jvm·c++·c·clang·gcc
不剪发的Tony老师15 小时前
Code::Blocks:一款免费开源的C/C++/Fortran集成开发环境
c语言·c++·ide