C sharp: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Riga 12:
* I puntatori possono essere utilizzati solo in particolari blocchi di codice marcati come "unsafe".
* In molte operazioni aritmetiche vengono controllati eventuali "overflow".
* Gli oggetti dinamici non vengono [[allocazione di memoria|deallocati]] esplicitamente; la loro rimozione viene gestita automaticamente (implicitamente) dal "[[garbage collection|garbage-collector]]" quando non esistono più riferimenti a tali oggetti. Questa gestione evita i due problemi ben noti dei ''[[dangling pointer]]'' e del ''[[memory leak]]'', anche se con un ovvia perdita di prestazioni.
* Come in [[Java (linguaggio)|Java]], è possibile ereditare da una sola classe (diversamente da come avviene in [[C++]]) ma è possibile implementare un numero indefinito di interfacce.
* Le sole conversioni implicite che sono consentite sono quelle "safe", ovvero che non espongono al rischio di perdita di dati causata dalla diversa tipologia di dato. Ad esempio non sono consentite conversioni implicite fra integer e boolean o fra enumerati ed integer.