Differences

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

Link to this comparison view

poo-is-ab:laboratoare:02 [2025/10/01 21:16]
razvan.cristea0106 [Diferențe C/C++]
poo-is-ab:laboratoare:02 [2025/10/11 17:42] (current)
razvan.cristea0106 [Diferențe C/C++]
Line 12: Line 12:
 ==== Introducere ==== ==== Introducere ====
  
-În cadrul acestui laborator vom evidenția principalele diferențe dintre limbajele C și C++. Vom analiza, prin exemple simple, modul în care C++ extinde caracteristicile limbajului C și vom pune bazele unei înțelegeri mai profunde a acestuia. Astfel, vom avea un punct de plecare solid pentru paradigma **Orientată Obiect (OO)** pe care o vom studia începând cu laboratorul următor.+În cadrul acestui laborator vom evidenția principalele diferențe dintre limbajele C și C++. Vom analiza, prin exemple simple, modul în care C++ extinde caracteristicile limbajului C și vom pune bazele unei înțelegeri mai profunde a acestuia. Astfel, vom avea un punct de plecare solid pentru paradigma **Orientată Obiect (OO)** pe care o vom studia începând cu laboratorul următor. Pentru a înțelege diferențele dintre cele două limbaje mai întâi ar trebui să știm care sunt asemănările,​ iar pentru asta recomandăm citirea [[poo-is-ab:​laboratoare:​01| laboratorului 1]].
  
 ==== Diferențe C/C++ ==== ==== Diferențe C/C++ ====
Line 472: Line 472:
 === Funcții cu același nume === === Funcții cu același nume ===
  
-În C++ avem avantajul ​de a declara funcții, procedeu cunoscut sub numele de **supraîncărcare a funcțiilor**, ​cu **același nume** dar care să difere prin **numărul și/sau tipul parametrilor**. Această modalitate de declarare a funcțiilor este cunoscută în **Programarea Orientată Obiect** sub numele de **polimorfism**,​ care în limba greacă înseamnă **multe forme**. Vom oferi mai multe detalii pe parcursul întregului semestru despre acest principiu al **POO**.+În C++ avem posibilitatea ​de a declara funcții cu **același nume** dar care să difere prin **numărul și/sau tipul parametrilor**, acest procedeu fiind cunoscut și sub numele de **supraîncărcare a funcțiilor**. Această modalitate de declarare a funcțiilor este cunoscută în **Programarea Orientată Obiect** sub numele de **polimorfism**,​ care în limba greacă înseamnă **multe forme**. Vom oferi mai multe detalii pe parcursul întregului semestru despre acest principiu al **POO**.
  
 Să urmărim exemplul de cod de mai jos care ilustrează polimorfismul a patru funcții. Să urmărim exemplul de cod de mai jos care ilustrează polimorfismul a patru funcții.
Line 513: Line 513:
 ==== Concluzii ==== ==== Concluzii ====
  
-Prin parcurgerea acestui laborator, putem spune cu certitudine că limbajul C++ reprezintă o evoluție firească a limbajului C, adăugând numeroase concepte și mecanisme care ne fac munca de programatori mai simplă și mai expresivă. Am văzut că librăria **fstream**,​ alocarea dinamică realizată într-un mod simplificat,​ introducerea referințelor,​ posibilitatea de a supraîncărca funcții și suportul pentru **Programarea Orientată Obiect** diferențiază C++ de C și ne oferă un cadru mai flexibil pentru dezvoltarea aplicațiilor. Totuși, este important să reținem că C++ rămâne compatibil cu C la nivel de bază, ceea ce îl face un limbaj versatil, potrivit atât pentru stilul **procedural**,​ cât și pentru cel **orientat pe obiecte**.+Prin parcurgerea acestui laborator, putem spune cu certitudine că limbajul C++ reprezintă o evoluție firească a limbajului C, adăugând numeroase concepte și mecanisme care ne fac munca de programatori mai simplă și mai expresivă. Am văzut că librăria **fstream**,​ alocarea dinamică realizată într-un mod simplificat,​ introducerea referințelor,​ posibilitatea de a supraîncărca funcții și suportul pentru **Programarea Orientată Obiect** diferențiază C++ de C și ne oferă un cadru mai flexibil pentru dezvoltarea aplicațiilor. Totuși, este important să reținem ​faptul ​că C++ rămâne compatibil cu C la nivel de bază, ceea ce îl face un limbaj versatil, potrivit atât pentru stilul **procedural**,​ cât și pentru cel **orientat pe obiecte**.
poo-is-ab/laboratoare/02.1759342613.txt.gz · Last modified: 2025/10/01 21:16 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