Książka, którą czytam, często wspomina, że typ musi być typem dosłownym do użycia w pewnych sytuacjach, takich jak typy, które mogą używać constexpr. Ale jedyną podaną definicją było to, że typy dosłowne są typami arytmetycznymi, referencyjnymi lub wskaźnikowymi. Ale kiedy definiujemy typ constexpr, wydaje się, że musi być zainicjalizowany za pomocą literału lub zmiennej, która została oryginalnie zainicjalizowana literałem.Potrzebujesz wyjaśnienia co do definicji typu literalnego
Jestem zmieszany z tym, co kwalifikuje się jako typ literalny, a co nie.
Jaki jest przykład typu nie dosłownego? – Ares
@Comrade: 'std :: string'. –
Tak więc, ogólnie rzecz biorąc, typy nie literalne są typami klas, wyłączając specjalne typy klas zawarte powyżej w odpowiedzi. – Ares