fork download
  1. #include <iostream>
  2.  
  3. class MyClass
  4. {
  5. public:
  6. MyClass(int a = 0) : skladnik(a) { std::cout << "Konstruktor\n"; }
  7. MyClass(MyClass& wz) { skladnik = wz.skladnik; std::cout << "Konstruktor kopiujacy\n"; }
  8. MyClass& operator=(const MyClass& wz) {
  9. if (this != &wz) this->skladnik = wz.skladnik;
  10. std::cout << "Operator przypisania\n";
  11. return *this;
  12. };
  13. ~MyClass() { std::cout << "Destruktor\n"; }
  14. void wypisz() { std::cout << skladnik << "\n"; }
  15. private:
  16. int skladnik;
  17. };
  18.  
  19. class MyClass2 : public MyClass
  20. {
  21. public:
  22. MyClass2 (int a) : MyClass(a) { };
  23. ~MyClass2() {};
  24. private:
  25. };
  26.  
  27.  
  28.  
  29. int main()
  30. {
  31. MyClass2 obiekt1(10);
  32. obiekt1.wypisz();
  33. MyClass2 obiekt2 = obiekt1;
  34. obiekt2.wypisz();
  35. MyClass2 obiekt3(20);
  36. obiekt1 = obiekt3;
  37. obiekt1.wypisz();
  38. }
  39.  
Success #stdin #stdout 0s 4444KB
stdin
Standard input is empty
stdout
Konstruktor
10
Konstruktor kopiujacy
10
Konstruktor
Operator przypisania
20
Destruktor
Destruktor
Destruktor