decltypeeste un cuvânt cheie al limbajului de programare C++ care a apărut în standardul C++11 actualizat . Împreună cu cuvântul cheie, autoeste folosit pentru a deduce tipurile de expresii pe care le ia ca argument.
Cuvântul cheie decltypea găsit o utilizare largă atunci când lucrați cu tipuri de date generice . Diferența dintre decltypeși autose reduce la tipul valorii returnate: rezultatul utilizării autopierde calificatorii de tip constși &, iar rezultatul utilizării decltypeîi păstrează pentru lucrări ulterioare [1] [2] .
De asemenea, în standardul C++11, cuvântul cheie decltypepoate fi folosit pentru a declara tipul de returnare al unei funcții în cazurile în care se folosește un nou mod de scriere a semnăturii unei funcții (în care valoarea returnată urmează lista parametrilor acesteia) [3] ] .
Standardul de limbaj C++14 actualizat a introdus capacitatea de a declara variabile cu un specificator de tip decltype(auto), care indică compilatorului să aleagă un tip de date pentru ele în funcție de tipul inițializatorului [4] .