Abkürzung...
-
Kann man das nicht so irgendwie schreiben?
#include <iostream> using namespace std; int HoleWert() { return 4; } int main() { int a = 3; if(a != (a = HoleWert())) cout << "Jetzt aber" << endl; cout << a; }
Wenn a noch nicht 4 war, soll "Jetzt aber" ausgegeben werden. Anschließend soll a automatisch 4 sein, weil Zuweisung. Aber das linke a scheint auch 4 zu sein, also es wird nix ausgegeben...
Gibts ne Möglichkeit das irgendwie so kurz hinzuschreiben?
Ich möchte nämlich nicht das machen:
if(a != HoleWert()) { cout << "Jetzt aber" << endl; a = HoleWert(); }
Möchte die Funktion nur einmal aufrufen und auch nicht unnötig eine weitere Variable anlegen...
-
nö
-
Wie wärs, wenn du die Abfrage einfach ganz weglassen würdest? Ist eine Zuweisung denn nicht gut genug?
Steckt da möglicherweise sogar Premature Optimization dahinter?
-
Ja ich weiß, unnötige Mikrooptimierung
Ne, ich möchte ja drauf reagieren wenn a nicht mehr HoleWert() ist...
-
Das wird nicht einfacher gehen als in deinem letzten Codebeispiel. Beziehungsweise würde eine Verkürzung des Codes wahrscheinlich keine Verbesserung des Maschinencodes bewirken...