Khi tôi xem xét hai quá tải sau:tham chiếu phổ biến so với ưu tiên tham chiếu const?
template <class... T> void f(const T&... x);
template <class T> void f(const T& x);
Tôi có sự đảm bảo rằng f(x)
sẽ luôn luôn gọi hàm thứ hai và sẽ không bao giờ dẫn đến một sự mơ hồ. Theo một nghĩa nào đó, phiên bản thứ hai được ưu tiên phổ biến so với phiên bản đầu tiên cho một đối số bất kể loại của nó là gì.
Bây giờ xem xét tình hình, nơi có một tài liệu tham khảo phổ thông và một phiên bản tham chiếu const của một hàm:
template <class T> void f(T&& x);
template <class T> void f(const T& x);
Câu hỏi của tôi là: là họ ưu tiên phổ biến giữa hai chức năng này không phụ thuộc vào loại x (tham chiếu giá trị r, tham chiếu, cv-vòng loại, con trỏ ...) như trong trường hợp trước? (và nếu có, ưu tiên là gì?)
Tôi nghĩ đó là [cuộc trò chuyện này] (http://www.youtube.com/watch?v=T5swP3dr190) bao gồm điều này. – chris