In linguaggi orientati agli oggetti uso variabili di classe per tenere traccia di quante istanze sono attualmente generati incrementando la costruzione e decrementando la distruzione.Come tenere traccia del conteggio delle istanze di un tipo?
cerco di implementare un comportamento simile a Go:
package entity
type Entity struct {
Name string
}
func New(name string) Entity {
entity := Entity{name}
counter++
return entity
}
var counter int = 0
func (e *Entity) Count() int {
return counter
}
e che funziona a metà strada come non riesco a decrementare il contatore tramite un distruttore.
Posso in qualche modo imitare la distruzione dell'oggetto? Come faccio a tenere traccia del conteggio delle istanze correttamente?
Esiste un metodo integrato per mostrare il conteggio dei riferimenti su un oggetto? –