This shows you the differences between two versions of the page.
sd-ca:laboratoare:laborator-03 [2016/02/21 19:41] radu.stochitoiu |
sd-ca:laboratoare:laborator-03 [2016/02/21 19:51] (current) darius.neatu |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Laborator 03 - Notiuni avansate de C++ ====== | + | ====== Articol 03 - Notiuni avansate de C++ ====== |
- | Responsabili | ||
- | * [[andrei.vasiliu2211@cti.pub.ro| Andrei Vasiliu]] | ||
- | * [[daniel.ciocirlan1607@cti.pub.ro| Daniel Ciocîrlan]] | ||
===== Obiective ===== | ===== Obiective ===== | ||
- | În urma parcurgerii acestui laborator studentul va: | + | În urma parcurgerii acestui articol studentul va: |
- | + | * înțelege conceptul de template | |
- | * afla funcționalitățile claselor/funcțiilor prietene | + | |
- | * realiza supraîncărcarea operatorilor din C++ | + | |
- | * înțelege conceptul de copy constructor | + | |
- | * înțelege conceptul de rule of three | + | |
===== Templates ===== | ===== Templates ===== | ||
Line 203: | Line 196: | ||
- [**1p**] supraîncărcarea operatorului de atribuire între două obiecte de tip vector | - [**1p**] supraîncărcarea operatorului de atribuire între două obiecte de tip vector | ||
- [**0.5p**] supraîncărcarea operatorului de indexare [] ce va permite accesul la elementele individuale prin indexare **Operatorul de indexare** este un operator binar, având ca prim termen obiectul care se indexează, iar ca al doilea termen indicele. (//''obiect[indice]'' este interpretat ca ''obiect.operator[](indice)''//. | - [**0.5p**] supraîncărcarea operatorului de indexare [] ce va permite accesul la elementele individuale prin indexare **Operatorul de indexare** este un operator binar, având ca prim termen obiectul care se indexează, iar ca al doilea termen indicele. (//''obiect[indice]'' este interpretat ca ''obiect.operator[](indice)''//. | ||
- | </hidden> | + | |
- [**4p**] Implementaţi clasa template **Set** care să permită lucrul cu mulțimi de obiecte, cu următoarele particularități: | - [**4p**] Implementaţi clasa template **Set** care să permită lucrul cu mulțimi de obiecte, cu următoarele particularități: | ||
- Constructorul va primi dimensiunea maximă de elemente care pot fi ținute în mulțime și va aloca spațiul necesar. | - Constructorul va primi dimensiunea maximă de elemente care pot fi ținute în mulțime și va aloca spațiul necesar. | ||
Line 214: | Line 207: | ||
- [**0.5p**] supraîncărcarea operatorului << (pentru scriere). | - [**0.5p**] supraîncărcarea operatorului << (pentru scriere). | ||
- [**0.5p**] supraîncărcarea operatorului >> (pentru citire). | - [**0.5p**] supraîncărcarea operatorului >> (pentru citire). | ||
+ | </hidden> |