Tipuri structurale și de referință în c #

În C #, toate tipurile de date sunt împărțite în două tipuri: structură și referință.

o Tipuri întregi

o Tipuri de puncte plutitoare

o Tip zecimal

· Structuri definite de utilizator (struct)







Variabilele bazate pe tipuri de valori conțin valori direct. Dacă atribuiți o variabilă de la un tip de valoare la altul, este creată o copie a valorii atribuite. Aceasta este diferența față de tipurile de referință, atunci când se atribuie care copiază referințele la obiect, mai degrabă decât obiectele în sine. Pentru fiecare tip de valoare, există un constructor implicit implicit care inițializează valoarea implicită pentru acest tip (pentru bool acesta este fals, pentru tipurile enumerate este zero).

Toate tipurile de valori sunt simple (sau primitive), deoarece constă într-un singur sens.

Cea mai mare cifră a întregului este utilizată ca semn de semnalizare. Dacă pavilionul semn este 0, atunci numărul este considerat pozitiv și dacă 1, atunci numărul este negativ.

Numerele în virgulă mobilă vă permit să reprezentați numere cu o parte fracționată, inclusiv float (32 biți) - cu precizie unică și dublă (64 biți) - dublă precizie.

Zeta zecimal (128 biți) este destinată utilizării în calculele financiare. Acest tip vă permite să reprezentați numerele cu o precizie de 28 de zecimale. Pentru ca valoarea să fie interpretată ca tip zecimal, la sfîrșit trebuie adăugat sufixul m, de exemplu:

zecimal d = 5,95m;

În C #, caracterele sunt reprezentate de un unicode pe 16 biți (tip char). Pentru a atribui o valoare unei variabile de caracter, este suficient să închideți caracterul în ghilimele simple.

Tipul bool logic oferă două valori - true (true) și false (false).

unde numele este numele tipului enum și enumeration_list este o listă de identificatori, separate prin virgule.

Fiecare simbolizată constantă în enumerare are o valoare întregă.

Tipurile de referință includ:

Tipurile de referință sunt stocate într-o grămadă sau șold, care pot fi reprezentate ca un set neordonat de obiecte eterogene. Din punct de vedere fizic, acesta este restul memoriei care este disponibilă procesorului.







15. Tipurile enumerate în C #

unde numele este numele tipului enum și enumeration_list este o listă de identificatori, separate prin virgule.

Fiecare simbolizată constantă în enumerare are o valoare întregă. Pentru fiecare constanta simbolizata simbolic, enumerarea specifica o valoare intrega care este una mai mare decat cea precedenta. În mod implicit, valoarea primei prime simbolice indicate în enumerare este zero.

Accesul la membrii enumerării se face cu numele lor, urmat de operatorul dot.

Valoarea uneia sau a mai multor constante simbolizate într-o enumerare poate fi specificată folosind un inițializator. Pentru a face acest lucru, este suficient să se indice, după desemnarea simbolică a unei singure constante, un semn egal și o valoare întreagă.

În mod implicit, int este selectată ca bază pentru enumerare, cu toate acestea, poate fi creată o enumerare a oricărui tip întreg, cu excepția char. Pentru a specifica orice alt tip decât int, puneți acest tip după numele enumerării, separându-l cu un colon. Formă generală:

Exemplu de enumerare:

public enum Music

16. Supraîncărcarea operatorului în C #

Supraîncărcarea operatorului este procesul de determinare a alocării unui operator unei clase create. În acest caz, acțiunea operatorului este complet controlată și poate varia în funcție de clasa specifică. În cazul supraîncărcării operatorului, niciuna dintre valorile sale inițiale nu este modificată.

Principalul avantaj al supraîncărcării de către operator este faptul că vă permite integrarea fără probleme a unui nou tip de clasă în mediul de programare.

Pentru a supraîncărca operatorul, utilizați cuvântul cheie operator, care definește metoda operatorului, care la rândul său determină acțiunea operatorului în raport cu clasa sa.

Există două forme de metode de operare: una pentru operatorii unari, cealaltă pentru operatorii binari.

Supraîncărcarea operatorului unar:

operatorul public static return_type op (operand_type_type)

Suprasolicitarea unui operator binar:

operatorul public static return_type op (parametru_tip1 operand1, parametru_tip2 operand2)

Aici, în loc de op, un operator supraîncărcat este înlocuit, iar tipul return_ reprezintă un anumit tip de valoare returnat de această operație. Pentru operatorii unari, operandul denumește operandul care trebuie transferat, iar pentru operatorii binari operad1 și operand2 sunt aceiași. Metodele operatorului trebuie să fie publice și statice.

Tipul operandului operatorilor unari trebuie sa fie acelasi cu clasa pentru care operatorul este supraincarcat. Și în operatorii binari, cel puțin unul dintre operanzi trebuie să fie de același tip ca și clasa sa. În parametrii operatorului, nu puteți utiliza modificatorii de refilare sau de ieșire.

int x, y, z; // coordonate tridimensionale







Articole similare

Trimiteți-le prietenilor: