No, il concetto è molto più semplice.
Crasha (se sei fortunato) perché sia il distruttore di v1 che quello di v2 stanno cercando di eliminare lo stesso oggetto (quello a cui puntano entrambi gli a1).codice:int main() { ObjectV v1; ObjectV v2(v1); return 0; }