Advertisement
Paarzivall

Untitled

Feb 7th, 2019
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.18 KB | None | 0 0
  1. #include <iostream>
  2. #include <cassert>
  3. #include <cstring>
  4.  
  5. class towar{
  6.     private:
  7.         char *nazwa_towaru;
  8.         static int ilosc_obiektow;
  9.     public:
  10.         towar();
  11.         towar(char[]);
  12.         towar(const towar&);
  13.         ~towar();
  14.         void drukuj();
  15. };
  16.  
  17. int towar::ilosc_obiektow = 0;
  18.  
  19. towar::towar(){
  20.     nazwa_towaru = new char[strlen("jakis towar")+1];
  21.     assert(nazwa_towaru);
  22.     strcpy(nazwa_towaru, "jakis towar");  
  23.     ilosc_obiektow++;
  24. }
  25.  
  26. towar::towar(char * tekst){
  27.     nazwa_towaru = new char[strlen(tekst)+1];
  28.     assert(nazwa_towaru);
  29.     strcpy(nazwa_towaru, tekst);
  30.     ilosc_obiektow++;
  31. }
  32.  
  33. towar::towar(const towar& wzor){
  34.     nazwa_towaru = new char[strlen(wzor.nazwa_towaru)+1];
  35.     assert(nazwa_towaru);
  36.     strcpy(nazwa_towaru, wzor.nazwa_towaru);
  37.     ilosc_obiektow++;
  38. }
  39.  
  40. towar::~towar(){
  41.     delete[] nazwa_towaru;
  42.     ilosc_obiektow--;
  43. }
  44.  
  45. void towar::drukuj(){
  46.     std::cout << "Nazwa towaru:\t" << nazwa_towaru << std::endl;
  47.     std::cout << "Ilosc obiektow:\t" << ilosc_obiektow << std::endl;
  48. }
  49.  
  50. int main(){
  51.     towar pierwszy;
  52.     pierwszy.drukuj();
  53.  
  54.     towar drugi("towar nr 2");
  55.     drugi.drukuj();
  56.  
  57.     towar trzeci = pierwszy;
  58.     trzeci.drukuj();
  59.    
  60.     return 0;
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement