Sunteți pe pagina 1din 1

Nume:____________________________________________________________ Grupă:_____

Subiect 3 – Apartament de închiriat

Nota 1
Să se creeze un proiect în Microsoft Visual Studio care să nu genereze erori de compilare.

Nota 2
Pentru clasa ApartamentDeInchiriat, data in fișierul sursa, se au in vedere câmpurile:
● adresa – șir de caractere, string;
● chirie – valoare chiriei pe lună
● durataAniContract – întreg care arată pentru câți ani este închiriat apartamentul;
● cheltuieliLunareIntretinere – vector alocat dinamic care conține întreținerea lunară;
● nrLuniInchiriere – întreg care indică numărul de luni de când apartamentul este închiriat
● NR_MAXIM_LOCATARI – atribut static întreg ce reprezintă limită maximă de persoane ce pot ocupa
apartamentul

Atributele clasei se definesc în zona privată a clasei.


Sa se implementeze constructorul implicit si metodele getAdresa(), getNrLuniPerioadaInchiriere(),
getAniContract() si sa se testeze in main(). Atributele clasei nu trebuie lăsate neinițializate.

Nota 3
Să se definească pentru clasa ApartamentDeInchiriat constructorul cu parametri și destructorul.
Constructorul cu parametri conține validări pentru parametrii primiți, , conform descrierilor atributelor. Sa se
testeze constructorul in main().

1 punct Să se implementeze destructorul clasei si metoda adaugaIntretinereLunara(). Metoda trebuie sa


adauge o nouă lună pentru întreținere cu valoarea indicată. Destructorul se implementează astfel încât sa nu
genereze memory leak-uri

1 punct Să se definească pentru clasa constructorul de copiere

1 punct Să se implementeze metoda durataRamasaContract() si metoda inchiriazaApartament(). Cerințele


pentru cele 2 metode sunt in fișierul sursa dat.

1 punct Să se supraîncarce pentru clasa operatorul de atribuire (=) fără a genera memory leaks.

1 punct Să se supraîncarce operatorii << și >> pentru citirea și afișarea obiectelor de tipul
ApartamentDeInchiriat. Elementele sunt afișate pe aceeași linie despărțite prin spațiu.

1 punct Să se supraîncarce operator += astfel încât sa se mai poată adaugă o luna de întreținere cu valoarea
primită.

1 punct Să se supraîncarce operator de indexare pentru a permite verificarea valorii întreținerii pentru o lună
dată ca index. Dacă valoarea indexului nu este corectă se generează excepție conform exemplului din fișier.

Timp de lucru: 1 oră

S-ar putea să vă placă și