Secondo voi è corretto restituire il puntatore ad una stringa allocata dinamicamente in un metodo?
Questo è un frammento di codice:
Tab::operator char*()const
{
char *str;
str = new char[3];
str[0] = '='; str[1] = '>'; str[2] = '\0';
return str;
}
questo operatore di casting restituisce semplicemente una stringa stampata poi in output video.
Non dovrebbe esserci un gestione della memoria dinamica e quindi successivamente una distruzione ? Nel codice non c'e'.
Nel caso quale potrebbe essere l'alternativa?