Compilerflag für automatische Zälvariable
-
Hallo Leute,
war es nicht so dass mit den neueren C++ Standards in
for(int i=0; ...das int i nicht mehr nötig ist? So dass man
for(i=0;...schreiben kann ohne i explizit vorher zu initialisieren?
Welchen Compiler Flag muss man beim GCC g++ setzen?
Habs mit "-std=c++0x" probiert. Funktioniert aber irgendwie nicht.
-
Du musst den Typ natürlich immer angeben. Im neuen Standard wird es den "auto" Typ geben, dann kannst du folgendes schreiben:
for (auto i = 0; ...)Hat bei nem int aber keine großartige bedeutung, das ist eher für Iteratoren gedacht.
-
Nein, das ist zum Glück nicht so.
Was du wahrscheinlich meinst, ist Typinferenz mittels
autounddecltype, welche in C++0x eingeführt wird.for (auto i = 0; /* ... */);Bei so einfachen Dingen wie
intist es meiner Ansicht nach klarer, falls der vollständige Typ hingeschrieben wird. Es sei denn, man möchte sich an einen nicht unmittelbar klaren Ausdruck (z.B. Rückgabewert einer Funktion) anpassen. Aber im Allgemeinen werde ich persönlich wohl sparsam mitautounddecltypeumgehen.
-
Du meinst wohl das
autoKeyword:
-
Danke an Alle!