C

Articoli tecnici organizzati per gruppo funzionale.

17 schede11 gruppiPagina 2 di 3

Template e Metaprogrammazione

8 nella pagina

Errore C++: Regole di Reference Collapsing nei Forwarding References

In un template con forwarding reference ('template<typename T> void f(T&&)'), passando un lvalue il tipo dedotto diventa 'T&', che tramite reference collapsing ('T& &&' -> 'T&') produce un lvalue reference ordinario; tentare di trattarlo come rvalue puro senza 'std::forward<T>' genera errori.

FORWARDING_REF_COLLAPSE
→

Errore C++17: Fold Expression su Parameter Pack Vuoto Senza Operando Base

Nelle fold expression unarie ('(... + args)'), la maggior parte degli operatori matematici (incluso '+', '*') non possiede un valore neutro di default e fallisce se il parameter pack contiene zero argomenti; solo '&&' (true), '||' (false) e ',' (void()) supportano fold unari vuoti.

FOLD_EXPRESSION_EMPTY_PACK
→