ich glaub du musst aber aufpassen wenn du ein mehrdimensionles Array hast. Wenn du das statisch angelegt hast weiss ich nicht ob der das hintereinander in den Speicher legt. Wenn du den Speicher erst zur laufzeit allokierst, dann kann dir das bei einem Mehrdimensionalen array auf jeden fall passieren das das nicht hintereinander im speicher liegt und du musst den Kremple wieder einzeln setzen (man spart dann mit memset legidlich eine Schleife)
dann kann es wirklich passieren, dass das nicht hintereinander abgelegt wird?
Ich habe mal in meinem Gerharsd Wilms C++ Grundlagen Buch nachgelesen. Dort wird aber schon geschriben, dass das Array immer sequentiell direkt hintereinander im Speicher abgelegt wird.
ich habe ja gesagt das ich das bei statischen arrays nicht weiss kann schon sein das der das hintereinander in den speicher packt (wobei ich halt nicht sicher bin ob der das immer macht. (Kann ja passieren das gar nicht soviel speicher am stück vorhanden ist. Keine ahnung was der dann macht. Aber ich würde einfach mal davon ausgehen das der das hintereinander packt
Wenn du allerdings sowas machst
C++:
int **feld; feld = newint*[10]; for(int i=0;i<10;i++) feld[i]= newint[10]; ...
dann bin ich mir sicher das man nicht gerantieren kann, dass der das hintereinander in den Speicher packt
Gruss Heiko -- ...fleißig wie zwei WeißbroteDieser Post wurde am 10.05.2003 um 14:42 Uhr von Heiko editiert.