000
26.02.2006, 00:34 Uhr
A-l-e-x
|
Die for-Schleife wird unter verschiedenen Compilern anders interpretiert:
C++: |
for(int i=0; i<10; i++) machWas(i);
for(int i=0; i<10; i++) // Problem mit VC++; bei Dev-C++ nicht machWas(i);
|
Wenn man unter VC++ eine Variable in einer for-Schleife deklariert, wird sie nicht nur in der for-Schleife definiert, sondern auch "außerhalb". Bei Dev-C++ zum Beispiel gilt es nur in der for-Schleife. Das Problem bei VC++ ist , dass man beim der nächsten for-Schleife den selben Namen für die Variable nicht verwenden kann.
Ok, man kann aber auch das "int" beim nächsten Mal weg lassen, doch das macht wiederrum bei einem anderen Compiler(Dev-C++) Probleme.
So jetzt meine Frage: Gibt es eine "#define" Eintrag, wo der Compilername gespeichert ist. Denn so kann man sich ein define basteln z.B. "VINT", was man statt des normalen "int" dann schreibt. Dieses "VINT" bewirkt, dass bei VC++ das "int" weggelassen wird und bei Dev-C++ das "int" da bleibt.
Gibt es vielleicht einen besseren Weg? Wenn ja, sollte der nicht so aussehen, dass man einen anderen Variablennamen verwendet.
PS: Ich hoffe ich habe das richtige Unterforum erwischt.
mfg A-l-e-x Dieser Post wurde am 26.02.2006 um 00:35 Uhr von A-l-e-x editiert. |