În acest articol
Se utilizează pentru a crea obiecte și constructori de apeluri. De exemplu:
Este, de asemenea, folosit pentru a crea instanțe de tipuri anonime.
Utilizând noul operator, puteți apela constructorul implicit pentru tipurile de valori. De exemplu:
În instrucțiunea anterioară, i este inițializată la 0. Aceasta este valoarea implicită pentru int. Acest operator conduce la rezultatul prezentat mai jos.
Pentru o listă completă a valorilor implicite, consultați tabelul Valoare implicită.
Obiectele unui tip de valoare, de exemplu structuri, sunt create pe stivă, în timp ce obiecte de tipul de referință, cum ar fi clasele, sunt create pe heap. Distrugerea ambelor tipuri de obiecte se efectuează automat, dar obiectele bazate pe tipuri de valori sunt șterse la părăsirea domeniului de aplicare, iar obiectele bazate pe tipurile de referință - la un moment nespecificat după ultima legătură care le indică sunt șterse. Pentru tipurile de referință care utilizează resurse fixe, cum ar fi cantități mari de memorie, descriptori de fișiere sau conexiuni de rețea, se recomandă uneori utilizarea finalizării deterministe pentru a se asigura distrugerea cât mai rapidă a obiectului. Pentru mai multe informații, consultați Utilizarea utilizării.
Operatorul nou nu poate fi reîncărcat.
În cazul în care noul operator nu alocă memorie, se aruncă OutOfMemoryException.
Următorul exemplu creează un obiect struct și un obiect de clasă care sunt inițializate cu noul operator. după care sunt atribuite valori. Valorile prestabilite și atribuite sunt afișate.
Rețineți că în exemplu, șirul este nul implicit. Prin urmare, nu este afișat.
C # Specificarea limbii
Pentru mai multe informații, consultați specificația C #. Specificația de limbă este o sursă prescriptivă de informații despre sintaxa și utilizarea limbajului C #.