auto& x için,
x'i referans olarak açıkça bildiriyorsunuz; bu yüzden onu tipi
const int *& ve
const_int göstergesi için referans şeklinde olmalıdır.
Derleme hatası mesajından derleme zamanında doğru türünü elde etmek için daha iyi bir fikir (
Effective Modern C ++ (Scott Meyers) 'den).
Kod:
template <typename>
struct TD;
o zaman onu böyle kullan:
Böyle bir hata mesajı alacaksınız:
Kod:
source_file.cpp:15:21: error: implicit instantiation of undefined template 'TD<const int *&>'
TD<decltype(x)> td;
^
Yardımcı işleviniz parametreyi değerlere göre alır; argümanın referans numarası tür tenzilinde dikkate alınmayacak, bu yüzden
const int * değerini almış olursunuz.