Che scemo! chiamata ricorsiva infinita? Volevo utilizzare sempre una sola funzione di base, utilizzata poi dalle altre, ma sono stato frettoloso e non ho riflettuto... =S.Originariamente inviato da shodan
Controlla per bene questa funzione:
codice:Vettore Molla::unitario(const list V) const { Vettore r( unitario(V) // in particolare questa chiamata. ); return std::move(r); }
Modificato come segue (poi metterò anche in pratica il tuo consiglio di passare per valore, risparmiando così una linea di codice).
Grazie mille, ora funziona.codice:Vettore Molla::unitario(const Vettore& V) const { return (1 / V.norma()) * V; } Vettore Molla::unitario(const vector& V) const { Vettore r(V); return std::move(unitario(r)); } Vettore Molla::unitario(const list& V) const { Vettore r(V); return std::move(unitario(r)); }
![]()

Rispondi quotando