Makro zum Konvertieren einer Liste
-
<< inseriert einen neuen Listen/Vektoreintrag.
Ein bisschen komisch, denn wenn ich definiere:
Macro(t1,t2,t3,a1,a2) PPhysicalQuantity(t1, PPhysicalQuantity::UnitsDegreesCelsius), PPhysicalQuantity(t2, PPhysicalQuantity::UnitsDegreesCelsius), PPhysicalQuantity(t3, PPhysicalQuantity::UnitsDegreesCelsius), QList<PPhysicalQuantity>() << PPhysicalQuantity(a1,PPhysicalQuantity::UnitsPercent) << PPhysicalQuantity(a2,PPhysicalQuantity::UnitsPercent)
(das selbe wie eben, nur ohne Makroklammern,
Macro(...) PPhysicalQuantity(t1,...
)
dann läufts.
-
okay, aber dann ist das Qt spezifisch, oder?
-
Das die Konstruktorklammer nach dem Makro weggelassen wird?
Ich bin mir sicher dass nicht. Ganz durchgestiegen bin ich aber selbst nicht.
-
Tags bitte und Code, den man nachvollziehen kann.
-
Edit: Nein, das ist falsch, es geht auch mit früheren Standards. (s. u.)
-
Doku sagt mir nicht, dass hier ein Problem mit C++03 entstehen könnte. Die Fehlermeldung passt auch nicht dazu.
-
Können die Template zur Compile-Zeit Einheiten umformen? Beziehungsweise zusammengesetzte Einheiten in ihre beispielsweise SI-Komponenten zerdröseln?
-
das geht ja tatsächlich!
Ich war fest davon überzeugt, das geht erst seit C++11 mit Temporaries. Nehme alles zurück.
-
Sone schrieb:
C++11 mit Temporaries.
Was gabs da Änderungen?
-
padawan11 schrieb:
Sone schrieb:
C++11 mit Temporaries.
Was gabs da Änderungen?
Das ist ja der Witz. Ich weiß, dass Gugelmoser (ein jetzt unregistrierter Benutzer) behauptet hat, die Zeile
std::ostringstream() << foosei erst seit C++11 wohlgeformt, was ich natürlich (
) geglaubt hab'...
Finden kann ich nichts.