Differences

This shows you the differences between two versions of the page.

Link to this comparison view

poo-is-ab:laboratoare:01 [2024/10/03 09:02]
razvan.cristea0106 [Asemănări C/C++]
poo-is-ab:laboratoare:01 [2025/01/19 22:27] (current)
razvan.cristea0106
Line 12: Line 12:
 ==== Introducere ==== ==== Introducere ====
  
-În acest laborator vom face o scurtă recapitulare a noțiunilor de bază învățate în limbajul C și vom vedea care sunt diferențele în linii mari dintre limbajele C și C++. Noi vom scrie programe în C++ pe întreg parcursul acestui semestru, deoarece vom învăța o nouă paradigmă de programare și anume cea __**Orientată Obiect (OO)**__.+În acest laborator vom face o scurtă recapitulare a noțiunilor de bază învățate în anul întâi la disciplina **Programarea Calculatoarelor și Limbaje de Programare (PCLP)** ​și vom vedea care sunt diferențele în linii mari dintre limbajele C și C++. Noi vom scrie programe în C++ pe întreg parcursul acestui semestru, deoarece vom învăța o nouă paradigmă de programare și anume cea **Orientată Obiect (OO)**.
  
 ==== Scurt Istoric ==== ==== Scurt Istoric ====
Line 762: Line 762:
 La fel ca în C, în C++ putem declara variabile constante folosind cuvântul cheie **const**. Așa cum le spune și numele variabilele constante sunt cele care odată inițializate cu o valoare **nu** mai pot fi modificate. La fel ca în C, în C++ putem declara variabile constante folosind cuvântul cheie **const**. Așa cum le spune și numele variabilele constante sunt cele care odată inițializate cu o valoare **nu** mai pot fi modificate.
  
-<note warning>​O variabilă constantă se ințializează pe linia unde a fost **declarată** altfel va genera o eroare de compilare</​note>​+<note warning>​O ​**variabilă constantă** se ințializează pe linia unde a fost **declarată** altfel va genera o eroare de compilare.</​note>​
  
 == Utilizarea keyword-ului const pe variabile obișnuite == == Utilizarea keyword-ului const pe variabile obișnuite ==
Line 835: Line 835:
 === Citirea și afișarea variabilelor === === Citirea și afișarea variabilelor ===
  
-În C erați obișnuiți să citiți și să afișați variabilele utilizând funcțiile **scanf** și **printf**. În C++ vom folosi operatorul **>>​** pentru ​citire ​și operatorul **<<​** pentru afișare.+În C erați obișnuiți să citiți și să afișați variabilele utilizând funcțiile **scanf** și **printf**. În C++ vom folosi operatorul **%%>>%%** pentru ​citirea datelor de la tastatură sau din fișiere ​și operatorul **%%<<%%** pentru afișarea datelor în fișiere sau consolă.
  
-== Citirea și afisarea ​în C ==+== Citirea și afișarea ​în C ==
  
 <code c> <code c>
Line 855: Line 855:
 </​code>​ </​code>​
  
-== Citirea și afisarea ​în C++ ==+== Citirea și afișarea ​în C++ ==
  
 <code cpp> <code cpp>
Line 1190: Line 1190:
 Funcția afisareVector folosește referințe constante la pointeri (const int* const& v), pentru a garanta că atât adresa vectorului, cât și conținutul acestuia nu vor fi modificate în timpul afișării, menținând integritatea datelor. Funcția afisareVector folosește referințe constante la pointeri (const int* const& v), pentru a garanta că atât adresa vectorului, cât și conținutul acestuia nu vor fi modificate în timpul afișării, menținând integritatea datelor.
  
-<note important>​C++ introduce posibilitatea de a inițializa pointerii cu **nullptr**,​ care este specific doar pentru acest tip de date. Acesta funcționează similar cu **NULL**, dar cu un avantaj important: **nullptr** este un tip de date dedicat **pointerilor**,​ ceea ce previne atribuirea sa accidentală altor tipuri de variabile, cum se putea întâmpla cu **NULL** în C++. În C++, **NULL** este definit doar ca un **macro** care reprezintă valoarea 0 și poate fi atribuit chiar și variabilelor care nu sunt pointeri, lucru care poate duce la erori neintenționate.</​note>​+<note important>​C++ introduce posibilitatea de a inițializa pointerii cu **nullptr**,​ care este specific doar pentru acest tip de date. Acesta funcționează similar cu **NULL**, dar cu un avantaj important: **nullptr** este un tip de date dedicat **pointerilor**,​ ceea ce previne atribuirea sa accidentală altor tipuri de variabile, cum se putea întâmpla cu **NULL** în C++. În C++, **NULL** este definit doar ca un **macro** care reprezintă valoarea 0 și poate fi atribuit chiar și variabilelor care nu sunt pointeri, lucru care poate duce la confuzii nedorite.</​note>​
  
 <code cpp> <code cpp>
Line 1209: Line 1209:
 ==== Concluzii ==== ==== Concluzii ====
  
-Am putut observa în cadrul acestui laborator care sunt asemănările dar și diferențele în linii mari dintre C și C++. De acum înainte suntem pregătiți să explorăm ​paradigma orientată obiect ​pe care o vom începe din laboratorul următor.+Am putut observa în cadrul acestui laborator care sunt **asemănările**, dar și **diferențele** în linii mari dintre C și C++. De acum înainte suntem pregătiți să explorăm ​**Paradigma Orientată Obiect** ​pe care o vom începe din laboratorul următor.
poo-is-ab/laboratoare/01.1727935349.txt.gz · Last modified: 2024/10/03 09:02 by razvan.cristea0106
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0