Advertisement
Guest User

Untitled

a guest
May 24th, 2018
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.27 KB | None | 0 0
  1. #include <stdlib.h>
  2. #include <stdio.h>
  3.  
  4. class Klasa
  5. {
  6. public:
  7.     int wartosc;
  8.  
  9.     Klasa(int val=0);
  10.     void Metoda();
  11. };
  12.  
  13. class Wyjatek
  14. {
  15. public:
  16.     int value;
  17.     char* nazwa;
  18.     Wyjatek(const Wyjatek& copy);
  19.     Wyjatek(int val,char* name);
  20.     ~Wyjatek();
  21.  
  22. };
  23. ---------------------------------------------------------
  24. #include "Library2.h"
  25.  
  26. Wyjatek::Wyjatek(const Wyjatek& copy)
  27. {
  28.     this->nazwa=copy.nazwa;
  29.     this->value=copy.value;
  30.     printf("Kopiuje wartosci z adresu %d do adresu %d \n",&copy,this);
  31. }
  32.  
  33. Wyjatek::Wyjatek(int val=0,char* name="Exception")
  34. {
  35.     this->value=val;
  36.     this->nazwa=name;
  37.     printf("Jestem konstruktorem wyjatku %s\n",this->nazwa);
  38. }
  39.  
  40. Wyjatek::~Wyjatek()
  41. {
  42.     printf("Jestem destruktorem wyjatku %s %d\n",this->nazwa,this);
  43. }
  44.  
  45. Klasa::Klasa(int val)
  46. {
  47.     this->wartosc=val;
  48. }
  49.  
  50. void Klasa::Metoda()
  51. {
  52.     if(this->wartosc==0)
  53.     {
  54.         Wyjatek exception(1,"Zero");
  55.         printf("%d\n",&exception);
  56.         throw &exception;
  57.     }
  58. }
  59. -------------------------------------------------------------------------------
  60. #include "Library2.h"
  61.  
  62.  
  63. int main(int argc, char* argv[])
  64. {
  65.     Klasa a(0);
  66.     try
  67.     {
  68.         a.Metoda();
  69.     }
  70.     catch(Wyjatek* Except)
  71.     {
  72.         printf("zlapalem wyjatek o nazwie - %s\n",Except->nazwa);
  73.         printf("%d\n",Except);
  74.     }
  75.     system("pause");
  76.     return 0;
  77. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement