[Erledigt] Frage zu If-Anweisung



  • Hi, ich zweifel gerade an meinem Verstand, ich habe ein Template programmiert und mit miniUnitTests Tests geschrieben aber irgendwie kommt ein Fehler bei einer einfachen if-Anweisung auf.

    Bei der Folgenden Funktion tritt der Fehler auf.

    template <class T, int n>
    	void remove(int index);
    	void remove(int index)throw (BadIndex){
    		int gr = groesse - 1;
    		if(index == gr && gr >= 0){
    			groesse--;
    		}else if (index < gr && gr >= 0){
    			data[index] == 0;	
    		}else{
    			throw BadIndex(index);
    		}
    	}
    

    Im Testfall ist der Wert von groesse=7 und der index=0.

    eigentlich sollte nun das Programm in den else if zweig laufen aber es geht erst zur if... dann else if... aber er geht nicht in den Block sondern springt raus ohne, dass überhaut in einen if-Block gesprungen wird.

    Woran liegt das?

    Ist es ein Fehler des Compilers oder was habe ich falsch gemacht.

    Link zum gesamten Paket.



  • data[index] == 0;

    Soll das vielleicht eigentlich eine Zuweisung sein?



  • Ups ja, suche jetzt schon seit gestern nach dem Fehler. Danke!!!!!! Mich hat es gewundert, dass im Debug Modus nicht in die Zeile gesprungen wurde.


Anmelden zum Antworten