hallo ich möchte ein dreidimensionales array als element einer klasse verwenden.
die grösse der ersten beiden dimensionen wird im konstruktor aus einer textdatei ausgelesen.
also irgendwie so etwas:
CTileMap::CTileMap()
{
//MapWidth und MapHeight aus Textdatei auslesen
...
Array[MapWidth][MapHeight][10]
...
}
hab schon ein bisschen gegoogelt und herausgefunden, dass es wohl schwieriger ist als ich zu beginn dachte.
ist das möglich ohne die vector klasse aus der std zu verwenden oder eine eigene klasse dafür zu schreiben?
was haltet ihr für die beste variante?
vielen dank für alle antworten!
Programmieren - alles kontrollieren 4.935 Themen, 20.621 Beiträge
Richtig, ohne & geht das so nicht. Habe die formen
Array0[i]= &Array00[i*10];
und
Array0[i]= Array00+i*10;
vermischt!
...erhalte ich die fehlermeldung "error C2440: '=' : 'char [2]' kann nicht in 'char' konvertiert werden":
Ein ausdruck wie "a" ist eine konstante, d.h. eine, beim compilieren/linken erzeugte, feste zeichenkette (0x61,0x00), deren inhalt und adresse konstant bleibt. Eine zuweisung in ein char-array ist nicht zulässig, es müsste schon ein strcpy() o.ä. sein.
Ist hingegen 'a' gemeint, also 0x61, dann ist das eine zahl, die bei passendem variabletyp (hier scheinbar char) als normale zuweisung erlaubt ist.
könnte das wieder an so einem doofen steuerzeichen liegen?
Wenn obere annahme richtig ist, dann tatsächlich!
mr.escape