ZFX
ZFX Neu
Home
Community
Neueste Posts
Chat
FAQ
IOTW
Tutorials
Bücher
zfxCON
ZFXCE
Mathlib
ASSIMP
NES
Wir über uns
Impressum
Regeln
Suchen
Mitgliederliste
Membername:
Passwort:
Besucher:
4442149
Jetzt (Chat):
14 (0)
Mitglieder:
5239
Themen:
24223
Nachrichten:
234554
Neuestes Mitglied:
-insane-

ZFX
Coding-Foren
Sourcecode-Probleme
Tipps und Hinweise für sauberen Code
GepinntSeite: < 1 2 3 4 >
AutorThema
WOOLPH Offline
ZFX'ler


Registriert seit:
03.05.2002

Österreich
Re: Tipps und Hinweise für sauberen CodeNach oben.
Schließ mich Cygon an
!!!!METAL 4EVER!!!!

Und ein wichtiger Teil zur saubern Programmierung:
Klassenmethoden bitte niemals in die Headerdatei (also nie Inlineimplementieren). Das ist nicht nur häßlich, sondern wenn du die Klasse als DLL oder static LIB zur Verfügung stellst sollten keine Methoden mehr veränderbar sein (was bei Inlineimp. aber der fall wäre)
12.08.2003, 15:34:25 Uhr
andijota Offline
ZFX'ler


Registriert seit:
30.07.2003

Berlin
Re: Tipps und Hinweise für sauberen CodeNach oben.
Code:
//! Initialisierung
  virtual void create(const DisplayMode &  ) = 0;

bitte, was heisst das &
hinter der variable vor der )

andi
15.08.2003, 19:40:29 Uhr
scalar Offline
ZFX'ler


Registriert seit:
11.08.2002

USA
Re: Tipps und Hinweise für sauberen CodeNach oben.
Referenz.

Edit: Editiert, damit es kein Ein-Wort-Posting mehr ist.
15.08.2003, 19:47:50 Uhr
andijota Offline
ZFX'ler


Registriert seit:
30.07.2003

Berlin
Re: Tipps und Hinweise für sauberen CodeNach oben.
danke,
Code:
void func000(int , char * );

void func(int * iii)
{
int i;
int *p_i;
p_i = &i;  //& is adresse is 100% klar, aber nach der variablen ??????
//...
}

andi
15.08.2003, 23:43:24 Uhr
ChrisM Offline
ZFX'ler


Registriert seit:
16.03.2002

Rheinland Pfalz
65348179
Re: Tipps und Hinweise für sauberen CodeNach oben.
scalar hat es doch schon gesagt.
Der Ampersand-Operator (&) führt eine Referenzierung aus, d.h. man erhält von Variablen die Adresse und (nicht als Operator) macht aus Typen eine Referenz (d.h. ein Objekt, das jedoch intern wie ein Zeiger behandelt wird).
Der *- und der ->-Operator hingegen dereferenzieren eine Adresse, d.h. machen aus der Adresse wieder ein Objekt, ermöglichen also den Zugriff auf die Daten, auf die ein Zeiger zeigt.

EDIT: Außerdem verwendet man den Stern (nicht als Operator) zum Erzeugen von Zeigertypen.

ChrisM
15.08.2003, 23:50:01 Uhr
ChrisMs Baustelle
Tom Offline
ZFX'ler


Registriert seit:
23.05.2003

Bayern
Re: Tipps und Hinweise für sauberen CodeNach oben.
Hi erstmal

Also ich selbst code erst seid knapp 1/2 Jahr auf C++ & DX habe aber auch was passendes (denk ich zumindestens) zum Thema das ich bis dato noch in keinem der vorangegangenen Postings gelesen hab. Kann sein das es für einige unter Euch selbstverständlich ist das zu nutzen, aber finde doch das es zur Übersicht sowie der Geschwindigkeit der Applikation beiträgt und hier erwähnt werden sollte.

Und zwar Look-Up Tabellen. Wer mit dem Begriff nix anfangen kann (glaubzwar eher net aber egal):

Look-Up Tabellen sind gut geeignet um immer wiederkehrende Berechnungen (Sin/Cos/etc.) vor dem eigentlichem Beginn des Game-Loops zu berechnen und jeweils in einem Array abzulegen. Zur eigentlichen Laufzeit kann man dann jederzeit entsprechend die Werte aus dem Array abfragen. Die Aufrufe auf den Array sind einfacher, schneller und übersichtlicher als solche Rohdaten jedes mal seperat zu berechnen.

Kann es wirklich jedem empfehlen - gerade als Klassen-Bausteine erleichtern sie in verschiedensten Situationen die Lesbarkeit des Codes und sparen wertvolle Rechenzeit.

Grüße

Tom
22.09.2003, 22:54:22 Uhr
Blutdurst Offline
ZFX'ler


Registriert seit:
26.02.2002

Deutschland
Re: Tipps und Hinweise für sauberen CodeNach oben.
Zitat:
Den Grundsatz breche ich
Ich kann bestens Programmieren und Planen während ich Death Metal höre.

-Markus-


Du gefällst mir http://www.darkstain.de/gfx/smilies/drink.gif
21.10.2003, 20:33:21 Uhr
Fireface Offline
ZFX'ler


Registriert seit:
19.08.2002

Österreich
Re: Tipps und Hinweise für sauberen CodeNach oben.
Ich ebenfalls!
Ohne Metallica/Nirvana im Ohr vergeht mir die Lust am Coden schon nach wenigen Stunden...
24.10.2003, 23:17:10 Uhr
LoneStar Offline
ZFX'ler


Registriert seit:
27.03.2002

Griechenland
86505817
Re: Tipps und Hinweise für sauberen CodeNach oben.
Green Day rox
24.10.2003, 23:36:34 Uhr
nufan Offline
ZFX'ler


Registriert seit:
13.05.2002

Deutschland
Re: Tipps und Hinweise für sauberen CodeNach oben.
Tom :

Zitat:
Look-Up Tabellen sind gut geeignet um immer wiederkehrende Berechnungen (Sin/Cos/etc.) vor dem eigentlichem Beginn des Game-Loops zu berechnen und jeweils in einem Array abzulegen. Zur eigentlichen Laufzeit kann man dann jederzeit entsprechend die Werte aus dem Array abfragen. Die Aufrufe auf den Array sind einfacher, schneller und übersichtlicher als solche Rohdaten jedes mal seperat zu berechnen.


Das kommt dabei raus, wenn Leute Bücher lesen, die vor 10 Jahren aktuell waren. LUTs sind Cache-unfreundlich, d.h. sie provozieren geradezu Cache-Misses und wie wir alle wissen, sind Speicherzugriffe auf aktuellen Systemen deutlich zeitintensiver als die Auflösung eines simplen Polynoms. Solange die Polynome nicht gerade hochkomplexe Formen annehmen, solltest du deinen Tip lieber ganz schnell vergessen. Ganz davon abgesehen kann ich leider nicht erkennen, wieso die Berechnung des Zugriffsschlüssels für ein Array z.B. beim Sinus einfacher sein soll als der Funktionsaufruf.
25.10.2003, 01:18:44 Uhr
Dennis Kempin Offline
ZFX'ler


Registriert seit:
18.05.2003

Nordrhein-Westfalen
Re: Tipps und Hinweise für sauberen CodeNach oben.
Ich bin mir nicht sicher, ob es schon erwähnt wurde (Falls doch, bitte löschen)
Gib niemals adressen von lokal definierte Variablen zurück !

Code:
int* bla()
{
    int local;
    [...]
    return &local; // FEHLER
}

Nachdem Bla() aufgerufe wurde, wird local zerstört. Man gibt also einen Zeiger auf eine zerstörte Variable zurück.

[EDIT]
Es gibt ein gutes Buch zum Thema sauberer/effizienter Code:
Effektiv C++ programmieren . 50 Möglichkeiten zur Verbesserung Ihrer Programme
[/EDIT]
08.11.2003, 14:22:03 Uhr
Jazzoid Offline
ZFX'ler


Registriert seit:
26.02.2002

Deutschland
113087642
Re: Tipps und Hinweise für sauberen CodeNach oben.
@nufan:
Also ich hatte letzten mal getesetet ob ne LookUp tab schneller ist als 3 verkette sin's ...
Und die LookUp hat gewonnen ...

KLar du hast recht im Allgemeinen sind die echt veraltet und lahm und sind nicht sehr genau , weil sie sonst zu riesig werden und so ...
Aber manchmal können sie doch helfen

Ich habe einen Grundsatz :
Beende nie deinen "Tag" mit Code der nich Kompiliert !!!

Ich denk dann zuviel darüber nach und bekomme den Kopf nicht richtig frei ...
"You need to take a bath" (zitat PI The movie )


EDIT:

Übersichtlicher Code heist klar schön Kapseln und Kommentieren ...
Da gibt es jedoch verschiedene Geschmäcker ...
der eine scheibt zum Beispiel
Code:
// includes

der andere (ich auch ) schreibt
Code:
// >>>>>> [includes]

beides richtig sagt beides was passiert optisch halt anders und der eine mag es so der andere so...
17.11.2003, 11:17:01 Uhr
meine page
Zacharias Offline
ZFX'ler


Registriert seit:
12.02.2003

Österreich
342797788
Re: Tipps und Hinweise für sauberen CodeNach oben.
Auch wichtig:

Code:
int bla()
{
    int local=new int;
    [...]
    return lokal;
}


Sieht einleuchtend aus, kann aber 400MB bei häufigem Aufrufen zusätzliche RAM-Auslastung zur Folge haben, da der allozierte Speicher nicht dealloziert wird!
Fieser Fehler, vorallem bei char!

Wer sich denkt: 400MB sind übertrieben, der hat meinen Code vor 28 Tagen nich gesehen...

mfg Zacharias
25.11.2003, 21:02:04 Uhr
TheCoder Offline
ZFX'ler


Registriert seit:
01.04.2002

Deutschland
Re: Tipps und Hinweise für sauberen CodeNach oben.
Zitat:
Code:
//! Initialisierung
  virtual void create(const DisplayMode &  ) = 0;

bitte, was heisst das &
hinter der variable vor der )

andi


hmm ich weiß ist alt, aber ich wollt das mal klären (bin manchmal ein perfektionist).
das & steht nicht hinter der Variable, du hast eigentlich genau das selbe in deinem nächsten Post gemacht

Zitat:
Code:
void func000(int , char * );


hier hast du nur hinter das char ein * gepackt. Ich glaub du hast einfach übersehen, dass DisplayMode keine Variable ist, sonder eine einfache Struktur (Klassen was weiß ich...) ist

Zitat:
Ich habe einen Grundsatz :
Beende nie deinen "Tag" mit Code der nich Kompiliert !!!


ja das finde ich auch schreklich, meistens kann ich dann kaum einschlafen, weil ich immer daran denke.
25.11.2003, 22:17:00 Uhr
Zacharias Offline
ZFX'ler


Registriert seit:
12.02.2003

Österreich
342797788
Re: Tipps und Hinweise für sauberen CodeNach oben.
Einschlafen? Ach das hab ich mal vor Jahren getan....

mfg Zacharias
29.11.2003, 10:28:50 Uhr
Dave bin wech...
ZFX'ler


Registriert seit:
15.12.2003

Baden-Württemberg
9227260
Re: Tipps und Hinweise für sauberen CodeNach oben.
Zitat von Jazzoid:
Ich habe einen Grundsatz :
Beende nie deinen "Tag" mit Code der nich Kompiliert !!!


Nun, da ist grundsätzlich was dran, ich mache es aber oft bewusst anders. Wenn ich bist spät in die Nach an ein und dem selben Problem code und nichts rauskommt, hab ich die Erfahrung gemacht, dass irgendwann einfach der Punkt kommt, wo man einfach nichts mehr aufs (virtuelle) Papier bekommt, da ist jede Minute Zeitverschwendung, die man noch am Rechner hockt. Ich habs oft erlebt, dass dann am nächsten Morgen die Lösung einfach da war (ohne dass man groß drüber nachdenken musste).

Ansonsten was mir noch einfällt:
- Auch wenn ich hier wiederhole ich halte es für wichtig: Divide and Conquer. Mach so viele Klassen und Funktionen wie es geht. Garzuviel ist zwar auch nicht gut, aber 90% der Programmierer tendieren eher dazu ihre Klassen/Methoden bis zum Rand vollzustopfen, als zu viele zu machen.
Eierlegende-Wohlmilch-Säue (oder viel mehr Klassen) braucht niemand. Die Wahrscheinlichkeit, dass man sich einen Fehler einbaut, wenn man erstmal 50 Parameter übergeben muss ist recht groß.
Eine Klasse die nur drei Zeilen Code besitzt mag unsinnig erscheinen, ist aber übersichtlich und einen Fehler darin, hat man in null-komma-nichts gefunden

- Einheitliche Normen! Nicht nur was Klammerung angeht, sonder vor allen Dingen was Bezeichnungen von Variablen, Funktionen und Klassen angeht. Am besten ist ein Kennzeichnung, bei der man sofort sieht, welchen Typ die Variable hat. Die berühmte Zählvariable "i" ist zwar sehr weit verbreitet aber spätestens bei verschachtelten Schleifen wird's unüberisichtlich. Warum nicht einfach "zaehlerAussen" und "zaehlerInnen" anstatt "i" und "j"...
Entweder erarbeitet man sich ein paar eigene Regeln oder übernimmt einen fertigen Standard (die Microsoft-Norm ist dahingehend nicht schlecht allerdings recht komplex)

- Kommentieren! Und zwar verständlich und einheitlich (nicht einmal unter dem Code, einmal darüber und einmal in der gleichen Zeile). Ich hab oft festgestellt, dass ich eigene Funktionen schneller wieder neugeschrieben hatte als, dass ich meine genialen (natürlich unkommentierten) Ergüsse von vor einem halben Jahr blicke. Irgendwie hat sich teilweise das Gerücht rumgesprochen, dass Kommentare ein Programm langsamer machen: Dem ist definitiv nicht so sie werden nicht mitkompiliert (hab zwar keinen Plan von C/C++ kann mir aber nicht vorstellen, dass das da anderst ist)
Oft lohnt es sich auch bestimmte Blöcke zu kommentieren.

zB.:
Code:
//BEGIN Berechnung von Irgendwas
...Anweisungen
//END Berechnung von Irgendwas


- in 9 von 10 Fällen ist die Möglichkeit, Blöcke zu Kommentieren, ein sicheres Indiz davon das in eine eigene Methode zu packen.

- Obwohl man als Programmierer ohne englisch nicht sehr weit kommt, und ich mit der Sprache auch überhaupt kein Problem habe, bin ich dazu übergegangen deutsche Bezeichnungen für Variablen und Funktionen zu benutzen. Ist einfach leichter und umgänglicher, weil man es gewöhnter ist. Es ist viel wichtiger, dass man seinen eigenen Sourcecode versteht, als dass man "professionell" wirkt. Die Wahrscheinlichkeit, dass man den bereits geschriebenen Code mal in einem Internationalem Team einsetzt ist eh recht gering...

- If-Anweisungen Abspecken:

statt
Code:
if (irgendwas) {
  if (irgendwas2) {
    if (irgendwas3) {
      machWas(); // Nutzlast
    } else {
      machWasAnderes3();
  } else {
    machWasAnderes2();
  }
} else {
  machWasAnderes();
}


lieber die verpönten Schleifenabbrüche und Kurzschlüsse (weiss nicht ob das in C++ auch mit exiut und break geht) nutzen...
Code:
if (!irgendwas)
  machWasAnderes();

if (!irgendwas2)
  machWasAnderes();

if (!irgendwas3)
  machWasAnderes();

machWas; // Nutzlast


Vorzeitiges Aussteigen aus einer Methode gilt zwar allgemein als unsauber macht aber den Quellcode gleichzeitig wesentlich lesbarer.

Gruß, Dave
16.12.2003, 23:28:12 Uhr
ChrisM Offline
ZFX'ler


Registriert seit:
16.03.2002

Rheinland Pfalz
65348179
Re: Tipps und Hinweise für sauberen CodeNach oben.
Hi,

da stimm' ich Dave zu!

Ich schalte auch lieber einige if-Wächter in meinen Funktion vor die eigentliche Berechnung, statt die ganze Funktion in eine einzige if-Abfrage einzubetten.
Von dem, was hinterher an Maschinencode herauskommt, dürfte da auch kein großer Unterschied sein, wenn überhaupt einer da ist.

ChrisM
17.12.2003, 00:02:35 Uhr
ChrisMs Baustelle
grenouille Offline
ZFX'ler


Registriert seit:
15.10.2002

Sachsen
137567803
Re: Tipps und Hinweise für sauberen CodeNach oben.
kann zwar keine äquivalenz zwischen den if-anweisungen erkennen, aber es is ja schon spät.

um noch das thema richtig auszureizen:
"goto's rulez"
17.12.2003, 01:06:30 Uhr
Kidney Stone Offline
ZFX'ler


Registriert seit:
24.10.2003

Schweiz
Re: Tipps und Hinweise für sauberen CodeNach oben.
ich benutze selbst break, continou (oder wie man das schreibt) usw... aber bestimmt keine GoTo.

Wo ein Break oder ein Continious (verdammt wie schreibt man das schon wieder) hinsprigt, sieht man normalerweise sofort, aber wo ein GoTo hingeht ist unklar.

das goto kann fast überall hin und macht den bekannten Spaghetti-Code...
17.12.2003, 15:18:04 Uhr
matthias Offline
ZFX'ler


Registriert seit:
05.01.2004


Re: Tipps und Hinweise für sauberen CodeNach oben.
Zitat von Kogs:
Sauberer Code:

- Behalte Funktionen/Methoden übersichtlich
Als Faustregel gilt, eine Funktion sollte auf eine Bildschirmseite passen.
Das ist natürlich nicht immer möglich, aber bei funktionen ab 500 Zeilen
aufwärts sollte man sich überlegen ob es nicht möglich ist, funktionalität
in neuen Funktionen auszulagern.


einige Editoren bieten ja auch eine Codeblock Collapse/Expand Funktion an...
Code:
//Winclass:
{
        winclass.cbSize    = sizeof(WNDCLASSEX);
    winclass.style    = CS_HREDRAW | CS_VREDRAW;
    winclass.lpfnWndProc  = WindowProc;
    winclass.cbClsExtra    = 0;
    winclass.cbWndExtra    = 0;
    winclass.hInstance    = hinst;
    winclass.hIcon        = LoadIcon(NULL, IDI_APPLICATION);
    winclass.hCursor    = LoadCursor(NULL, IDC_ARROW);
    winclass.hbrBackground    = (HBRUSH) GetStockObject(WHITE_BRUSH);
    winclass.lpszMenuName    = NULL;
    winclass.lpszClassName    = szClassname;
    winclass.hIconSm    = LoadIcon(NULL, IDI_APPLICATION);
}


wird zu
Code:
//Winclass:
+ [...]


ich finde das praktisch wird allerdings nicht von jedem editor unterstützt :/

3 Mal gendert, zuletzt am 21.02.2004, 11:52:28 Uhr von matthias.
18.02.2004, 21:53:08 Uhr
CptStone Offline
ZFX'ler


Registriert seit:
26.01.2003

Hamburg
Re: Tipps und Hinweise für sauberen CodeNach oben.
Hm, ChrisM meinte vielleicht lieber 1) statt 2) in:

Zitat:

1) if(WetterGut) Rausgehn(jetzt);

2) void Rausgehn(time wann) { if (!WetterGut) return; [...] };


Und sonst noch:

@Kidney: Niemand glaubt Dir, daß Du continue benutzt, wenn Du es nicht richtig schreiben kannst

Dave schrub:
Zitat:
Am besten ist ein Kennzeichnung, bei der man sofort sieht, welchen Typ die Variable hat.

-I don't think so, Dave. If you've got 100+ types in your appplication plus pointers, arrays and references then where do names of variables go to? - hell?
19.02.2004, 00:10:28 Uhr
Homepage
Kimmi Offline
ZFX'ler


Registriert seit:
10.10.2002

Schleswig-Holstein
93425079
Re: Tipps und Hinweise für sauberen CodeNach oben.
@Dave Tu der Menschheit bitte den Gefallen und nutze wieder englische Variablennamen. Ich habe momentan das Glück, ein Projekt bearbeiten zu dürfen, welches ebenfalls mit deutschen Variablennamen durchsetzt ist. Sobald man das an einen Nichtdeutschsprechenden weiterleitet, ist man mehr mit Übersetzung (am Tel. mitteilen, was das heisst) beschäftigt als mit allen anderen Dingen. Sollte ich erwähnen, das der junge Mann mit den deutschen Variablennamen nicht damit gerechnet hat, dass mal ein anderer an seinem Code schafft ?
Zum Hinweis mit den Ifs -> richtig so.
Zum Hinweis mit den Variablenindices in Loops:

Code:
int iLoopNo1, iLoopNo2;
for (iLoopNo1=0; iLoopNo1<100; ++iLoopNo1) 
{
    for (iLoopNo2=0; iLoopNo2<100; ++iLoopNo2)
    {
    array[iLoopNo1][iLoopNo2] = wasweissich;
    }
}

ist in meinen Augen unleserlicher als:
Code:
int i,j;
for(i=0;i<100;++i)
{  
  for (j=0; j<100; ++j)
  {
     a[i][j]=maswas;
  }
}

Ich mag Variante Nummer 2 wesentlich lieber. Dabei geht es mir gar nicht um die Schreibarbeit, sondern vielmehr um die Tatsache, dass ich einen längeren Ausdruck nicht so schnell durchschau wie einen kurzen.
Wenn man für Indices bereits selbsterklärende Variablennamen braucht, ist es Zeit, das ganze Konstrukt aufzubrechen (ob mittels weiterer Methodiken oder Funktionen sei mal dahingestellt).
Bei allen anderen Punkten stimme ich Dave zu.
Was Lustiges nebenbei: Habe ca. 1 Monat an meinem ersten Solver gesessen (Diplomarbeit), um einen Bug zu finden, ohne Erfolg. Irgendwann bin ich frustiert in eine Kneipe gegangen und habe dort bis um 5:00 Uhr morgens tiefer ins Bierglas geschaut. Am nächsten Morgen sass ich dann am PC und hab das Problem in 2 Minuten gefixt...

MfG Kimmi

Edit: Rechtsschreibung verbessert.

2 Mal gendert, zuletzt am 19.02.2004, 10:31:51 Uhr von Kimmi.
19.02.2004, 09:44:22 Uhr
Kurzer Weblog
scalar Offline
ZFX'ler


Registriert seit:
11.08.2002

USA
Re: Tipps und Hinweise für sauberen CodeNach oben.
Zitat von Dave:
Code:
if (irgendwas) {
  if (irgendwas2) {
    if (irgendwas3) {
      machWas(); // Nutzlast
    } else {
      machWasAnderes3();
  } else {
    machWasAnderes2();
  }
} else {
  machWasAnderes();
}


[...]

Code:
if (!irgendwas)
  machWasAnderes();

if (!irgendwas2)
  machWasAnderes();

if (!irgendwas3)
  machWasAnderes();

machWas; // Nutzlast



Ist es beabsichtigt, dass die beiden Bloecke nicht aequivalent sind?

Edit: Ah, ist grenouille ja auch schon aufgefallen.

1 Mal gendert, zuletzt am 19.02.2004, 10:28:57 Uhr von scalar.
19.02.2004, 10:27:45 Uhr
scalar Offline
ZFX'ler


Registriert seit:
11.08.2002

USA
Re: Tipps und Hinweise für sauberen CodeNach oben.
Zitat von TheCoder:
Zitat:
Ich habe einen Grundsatz :
Beende nie deinen "Tag" mit Code der nich Kompiliert !!!


ja das finde ich auch schreklich, meistens kann ich dann kaum einschlafen, weil ich immer daran denke.


Ehh... Ihr programmiert nicht fuer Geld. Wenn ich mal viel Refactoring machen muss und das an einem Tag nicht fertig wird, dann geh ich nach Hause.

Der wichtigste Grundsatz ist naemlich immer noch: Programmiere nicht, wenn Du so muede bist, das deine Birne Brei ist.
19.02.2004, 10:33:15 Uhr
norebo Offline
ZFX'ler


Registriert seit:
26.02.2002

Deutschland
98138075
Re: Tipps und Hinweise für sauberen CodeNach oben.
Zitat von Kimmi:

Code:
int i,j;
for(i=0;i<100;++i)
{  
  for (j=0; j<100; ++j)
  {
     a[i][j]=maswas;
  }
}



Schleifenvariablen immer erst im Schleifenkopf definieren, dadurch wird falscher Benutzung vorgebeugt.

Falsch:
Code:
int i;
for(i = 0; i < MAX; ++i)
{
    for(i = 0; i < MAX2; ++i)
    {
        Array[i]; //i wird verwendet
    }
}


Richtig:
Code:
for(int i = 0; i < MAX; ++i)
{
    for(int i = 0; i < MAX2; ++i)
    {
        Array[i]; //inneres i wird verwendet
    }
}


Wobei anzumerken ist, dass man bei verschachtelten Schleifen auf die Verwendung gleichnamiger Schleifenvariablen verzichtet werden sollte ;>
19.02.2004, 21:37:47 Uhr
GepinntSeite: < 1 2 3 4 >


ZFX Community Software, Version 0.9.1
Copyright 2002-2003 by Steffen Engel