1. მოცემულია myVector კლასი და პროგრამის main( ) -ი:
class myVector int main() { { double a, b, c; myVector A(4.1, 3.2, 2.), public: B(2.), C; myVector(double = 4., double = 2., double = -1.); A -= B; myVector& operator -= (myVector&); cout << "A : " << A << endl; myVector& operator++(); double n(0.5); myVector operator /(double); B = C / n; friend ostream& operator <<(ostream&, myVector&); cout << "B : " << B << endl; }; C = ++B; cout << "C : " << C << endl; cout << "B : " << B << endl; } ა) შეავსეთ კოდი სრულ პროგრამამდე, ე.ი. კლასის გარეთ მოიყვანეთ კლასის ფუნქციების და მეგობარი ფუნქციების იმპლემენტაცია; პროგრამის შესასრულებლად დაამატეთ საჭირო header ფაილები; ბ) შეასრულეთ პროგრამა და აჩვენეთ მიღებული გამოტანის ეკრანი.
2. ააგეთ კლასების შემდეგი იერარქია:
ა). საბაზო კლასში Vehicle (სატრანსპორტო საშუალება) გაითვალისწინეთ მონაცემები weight (წონა), range (ტვირთამწეობა) და ფუნქციები – პარამეტრებიანი კონსტრუქტორი, დესტრუქტორი და მონაცემების ფუნქცია; ბ). Vehicle კლასის მემკვიდრე კლასი Car (მსუბუქი მანქანა) ამატებს მონაცემებს speed (სიჩქარე) და cyl (ცილინდრების რაოდენობა). შემოიღეთ კლასის პარამეტრებიანი კონსტრუქტორი, დესტრუქტორი, მონაცემების ბეჭდვის ფუნქცია და სხვა ფუნქციები საჭიროების მიხედვით; გ). Car კლასის მემკვიდრე კლასი Bus (ავტობუსი) ამატებს მონაცემებს color (ფერი) და passengers (მგზავრების რაოდენობა). კლასში შემოიღეთ პარამეტრებიანი კონსტრუქტორი, დესტრუქტორი, მონაცემების ბეჭდვის ფუნქცია და სხვა ფუნქციები საჭიროების მიხედვით. შენიშვნა: ყოველ მემკვიდრე კლასში გამოიყენეთ წინაპარი კლასის ბეჭდვის ფუნქცია. მონაცემები დაბეჭდეთ შემდეგი სახით: რომელი ველია და რა არის მისი მნიშვნელობა. main -ში: 1) შექმენით საბაზო კლასის ობიექტი და დაბეჭდეთ ინფორმაცია მის შესახებ. შემდეგ დინამიკურად შექმენით ორივე მემკვიდრე კლასის თითო–თითო ობიექტი და დაბეჭდეთ მათი თავდაპირველი მონაცემები; 2) შეცვალეთ ავტობუსის მგზავრების რაოდენობა კლავიატურიდან შემოტანილი ახალი მნიშვნელობით. თუ მანქანის სიჩქარე 110 კმ/სთ –ზე მეტია, შეამცირეთ იგი 50 კმ/სთ –ით. კვლავ დაბეჭდეთ Bus და Car კლასების ობიექტების შესახებ სრული ინფორმაცია. ბოლოს, გაათავისუფლეთ დაკავებული დინამიკური მეხსიერება.