Advertisement
Guest User

Operatori

a guest
Apr 24th, 2019
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.10 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstring>
  3. using namespace std;
  4.  
  5. class Covek{
  6.  private:
  7.      int godini;
  8.      float visina;
  9.      char ime[20];
  10.      int poeni[10];
  11.  public:
  12.     Covek(){
  13.      godini=0;
  14.      visina=0;
  15.      strcpy(ime,"");
  16.     }
  17.     Covek(char *ime1, int godini1, float visina1){
  18.       strcpy(ime,ime1);
  19.       godini=godini1;
  20.       visina=visina1;
  21.     }
  22.     void pecati(){
  23.         cout<<ime<<" "<<godini<<" "<<visina<<endl;
  24.     }
  25.  
  26.     Covek operator +(const Covek &c){
  27.       Covek nov(ime,godini+c.godini,visina);
  28.       return nov;
  29.     }
  30.   Covek operator -(int vrednost){
  31.       Covek nov(ime,godini-vrednost,visina);
  32.       return nov;
  33.     }
  34.  
  35. Covek operator -=(const Covek &c){
  36.   godini+=c.godini;
  37.   visina+=c.visina;
  38.   return *this;
  39. }
  40.  
  41.     friend ostream& operator <<( ostream &out, const Covek &c ){
  42.        out<<c.ime<<" "<<c.godini<<" "<<c.visina<<endl;
  43.        return out;
  44.     }
  45.  
  46.    friend istream& operator >>( istream &in,  Covek &c ){
  47.        in>>c.ime>>c.godini>>c.visina;
  48.        return in;
  49.     }
  50.  
  51.     Covek operator ++(){
  52.         godini+=1;
  53.         visina+=10;
  54.         return *this;
  55.     }
  56.      Covek operator ++(int){
  57.          Covek tmp=*this;
  58.         godini+=1;
  59.         visina+=10;
  60.         return tmp;
  61.     }
  62.  
  63.  
  64.     Covek operator--(){
  65.         godini-=1;
  66.         visina-=10;
  67.         return *this;
  68.     }
  69.      Covek operator --(int){
  70.          Covek tmp=*this;
  71.         godini-=1;
  72.         visina-=10;
  73.         return tmp;
  74.     }
  75.  
  76.     bool operator ==(int vrednost ){
  77.     if(godini>vrednost){
  78.         return true;
  79.     }else{
  80.     return false;
  81.     }
  82.  
  83.     }
  84.  
  85.     char operator [](int i){
  86.         if(i>=0 && i<strlen(ime)){
  87.                 return ime[i];
  88.         }else{
  89.         return ' ';
  90.         }
  91.  
  92.  
  93.     }
  94.  
  95. };
  96. // ( + - * / ) se kreira nov objekt pri vrakanje
  97. // += -= *= /= se vrakja this
  98. //>> << so friend za skeniranje i pecatenje
  99. //inkrementacii prefiks i postfiks(int) ++ --
  100. //bulovi   ( > < >= <= == != )
  101. // [] - ostanato
  102. int main()
  103. {
  104.  
  105.     Covek c1("Ivan",25,185.5);
  106.       Covek c2("Petar",30,175.5);
  107.      cout<<c1[3];
  108.     return 0;
  109. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement