Hallo,
ich habe gerade längere Zeit gerätselt, wieso ein Programm nicht lief, in dem einem Array mit Hilfe einer for-Schleife Objekte zugewiesen werden sollten. Weder der Compiler meldete sich noch eine hilfreiche Fehlermeldung..
Entsprechend groß war meine Überraschung dann als ich aus purer Verzweiflung einen Ausdruck in der for-Schleife verändert habe und - tadaa es lief^^
Vorher:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| Integernumber[] IntArray = new Integernumber[4]; Random rnd = new Random(); Int32 random;
for (Int32 i = 0; i == 3; i++) { random = rnd.Next(); IntArray[i] = new Integernumber(random); } |
Nachher:
C#-Quelltext
1: 2: 3: 4: 5:
| for (Int32 i = 0; i < 4; i++) { random = rnd.Next(); IntArray[i] = new Integernumber(random); } |
(Der Vollständigkeit halber:)
C#-Quelltext
1: 2: 3: 4: 5:
| public Integernumber(Int32 intNo) { IntNumber = intNo; } |
Wieso funktioniert die erste Schleife nicht? Dem Array werden einfach keine Werte zugewiesen bzw. bleiben alle auf null stehen.
Grüße