Nếu tôi muốn trích xuất các loại của một tham chiếu const (như tăng gấp đôi từ const double &), làm tôi phải sử dụng:std :: remove_reference hoặc std :: remove_cv trước?
typename std::remove_cv<typename std::remove_reference<Type>::type>::type
hoặc
typename std::remove_reference<typename std::remove_cv<Type>::type>::type
?
'std :: decay' = [ 'Unqualified'] (http://flamingdangerzone.com/cxx11/2013/02/ 25/even-more-traits.html # unqualified_types), hai ngữ nghĩa ngụ ý khác nhau. – Xeo
@Xeo Có bạn nói đúng. (Nhưng khi 'T' không phải là một hàm hay mảng (trường hợp của' const double & ') thì' decay :: type' giống với 'remove_cv :: type> :: type'.) (Ngoài ra tôi đã nói "có một cái nhìn tại", không phải "sử dụng thay vì" ^^) –