Le eccezioni utilizzano il tipo statico di un oggetto su copy-initialize l'oggetto generato. Per esempio:Perché gli oggetti lanciati devono essere inizializzati in copia?
struct foo
{
foo() = default;
foo(const foo&) = delete;
};
int main()
{
throw foo();
}
Clang++ --std=c++14
lamenta che il costruttore di copia esplicitamente eliminati non può essere utilizzato. Perché non può essere spostato-inizializzato invece?
Non riesco più a eliminarlo perché ha delle risposte ma sto votando per chiudere come off-topic a causa di un "semplice errore tipografico". Il mio problema non è stato così banale come questo, ma ho chiaramente dimenticato di creare un costruttore di mosse. – zneak
Grazie alla tua domanda ho imparato qualcosa. Si prega di non votare per chiuderlo, e con tutti i mezzi per non cancellarlo !! –