Operaror ++



  • Hallo, ich habe ein Problem. Ich habe ein C++ Programm geschreiben das mit dualzahllen rechnet also 1001 z.B. das ist ein Klassen basiertes Programm. Meine aufgabe war, einen ++ Operator zu schreiben, der die dualzahl um 1 erhöht. Hierfür habe ich eine funktion geschreiben, die die dualzahl in eine dezimalzahl umwandelt. Diese Funktion verwende ich für meine anderen Operatoren auch, die alle Funktionieren, nur der ++ Operator tut seine arbeit nicht, es kommt keine Fehlermeldung. Kann mir einer sagen woran es liegt??

    nibble nibble::operator ++()
    {

    nibble hilf(nib_to_int()+1);
    return (hilf);
    }

    nibble nibble::operator ++(int)
    {

    nibble hilf2=*this;
    nibble hilf(nib_to_int()+1);
    return (hilf2);
    }



  • const nibble& nibble::operator ++()
    {
      // Wert _dieses_ Objekts erhöhen
      return *this;
    }
    
    const nibble nibble::operator ++(int)
    {
      nibble hilf(*this);
      // Wert _dieses_ Objekts erhöhen
      return hilf;
    }
    

    edit: const vergessen...


  • Mod

    const nibble nibble::operator ++(int)
    {
      nibble hilf(*this);
      ++*this;         // Wert _dieses_ Objekts erhöhen
      return hilf;
    }
    

Anmelden zum Antworten