Komische If-Abfrage!
-
Hallo,
Ich hab eine ganz normale erstellt und zwar folgende:
if((y1 - entry_value <= -1)|| ((y1 - entry_value) > (map_.getHeight()-1))) return false;Und ich will einfach return false zurückliefern, wenn y1-entry_value negativ wird also gleich -1 oder kleiner 0 muss noch akzeptiert werden!
Das sollte ja so gehen oder?mfg
-
jo, müßte gehen.
welchen typ haben die beteiligten variablen? zufällug unsigned short?
-
nein, sind jeweils int! Dann wirds wohl an etwas anderen liegen!
-
Wenn y1 positiv ist und entry_value auch postiv ist dann funktioniert
if(y1 - entry_value <= -1) return false;Wenn entry_value aber negativ ist oder y1 und entry_value, musst du bedenken das folgendes passiert:
#include <iostream> int main() { int y1 = 27; int entry_value = -29; if(y1 - entry_value <= -1) std::cout << "Ich werde niemals geschrieben, weil das Ergebnis +56 ist!"; }
-
_if schrieb:
Das sollte ja so gehen oder?
Was geht denn nicht? Hast du dir die Werte der Variablen angeschaut, bei denen nicht das erwartete Verhalten auftritt?