Wenn ich den Typ eines konstante Referenz extrahieren möchten (wie Doppel von const double &), muss ich verwenden:std :: remove_reference oder std :: remove_cv zuerst?
typename std::remove_cv<typename std::remove_reference<Type>::type>::type
oder
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), implizieren die beiden unterschiedliche Semantiken. – Xeo
@Xeo Ja, Sie haben Recht. (Aber wenn 'T 'weder eine Funktion noch ein Array ist (was bei' const double & 'der Fall war), ist' case :: type' dasselbe wie 'remove_cv :: type> :: type'.) (Auch ich sagte "schau es dir an", nicht "benutze lieber" ^^) –