[ Mix5 @ 01.02.2007. 02:26 ] @
Code:
#include <iostream>

using namespace std;

class broj
{
      private:
              int a;
              int b;
      public:
              broj (int aa, int bb)
              {
                      a = aa; b = bb;
              }
              
              //-----------------Prefiksni oblik--------------------------------
              
              broj& operator++ ()
              {
                  ++a;
                  ++b;
                  return *this;
              }
              friend broj& operator-- (broj& b)
              {
                  --b.a;
                  --b.b;
                  return b;
              }
              
              //-----------------Postfiksni oblik-------------------------------
              
              broj operator--(int f)
              {
                  broj a = *this;
                  a--;
                  b--;
                  return a;
              }
              friend broj operator++(broj& b, int f)
              {
                  broj a = b;
                  b.a++;
                  b.b++;
                  return a;
              }
              
              //----------------------------------------------------------------
              
              friend ostream& operator<< (ostream& dat, const broj& b)
              {
                     dat << '(' << b.a << ',' << b.b << ')' << endl;
              }
};

main()
{
      broj a(2,2);
      cout << a-- << a;
      system("pause");
}


Da li neko zna zasto mi ne radi postfiksni operator --?
[ Mix5 @ 01.02.2007. 03:03 ] @
Nasao sam gresku!!! Mozete da brisete temu
[ del-boy @ 01.02.2007. 03:04 ] @
Evo na brzinu sam pogledao i našao grešku, odnosno kod mene je proradio...

Greška ti je bila u:
Code:

              //-----------------Postfiksni oblik-------------------------------
              
              broj operator--(int f)
              {
                  broj a = *this;
                  a--;
                  b--;
                  return a;
              }


odnosno dao si ista lokalnoj promenljivoj i podatku članu klase. Deo broj a = *this; zameni sa, recimo, broj c = *this;, i naravno, return sa return a; na return c;, ili podacima članocima pristupaj sa a.a-- i a.b--.

Dakle radi sa:

Code:

              //-----------------Postfiksni oblik-------------------------------
              
              broj operator--(int f)
              {
                  broj c = *this;
                  a--;
                  b--;
                  return c;
              }


ili

Code:

              //-----------------Postfiksni oblik-------------------------------
              
              broj operator--(int f)
              {
                  broj a = *this;
                  a.a--;
                  a.b--;
                  return a;
              }
[ del-boy @ 01.02.2007. 03:04 ] @
He, bio si 55 sekundi brži od mene