Si supponga di disporre di un metodo C++ che restituisce un puntatore a un oggetto. Qualcosa nel file di intestazione che assomiglia a questo:Convenzione di nomi per l'eliminazione dei dati in C++
uint8_t* getData(void);
Questo ragazzo restituisce un array di byte, ma non c'è nulla che dice che se questo è un pezzo dinamico o generato staticamente dei dati (locale alla classe o creati con il nuovo).
Esiste una convenzione di denominazione specifica in C++ per distinguere tra metodi che restituiscono memoria allocata dinamicamente (e quindi deve essere cancellata dal richiedente), vs metodi che restituiscono semplicemente un riferimento a una porzione di dati definita staticamente?
Qual è il modo preferito per farlo o dipende dalla situazione?
"deve essere eliminato dal richiedente" -> Codice errato. Non cancellare nulla manualmente, avvolgerlo. – GManNickG