Hi,
@Sicro:
Danke, da muss man erstmal drauf kommen...das mit der Angabe von Map in den Parametern habe ich noch nirgends in der Hilfe gesehen. Oder besser gesagt, ich finde dieses Schlüsselwort nirgends in der Hilfe...immer nur NewMap.
@#NULL:
Mein letztes Beispiel trifft meinen Anwendungsfall recht gut (es geht aber nicht um Autos

). Die Map soll global im Programm zur Verfügung stehen und beinhaltet Profile mit sämtlichen Variablen. Die Funktion liest eigentlich eine XML-Datei ein und speichert die Inhalte kurzzeitig in der Struktur, um sie dann außerhalb (deswegen static) der Funktion der Map hinzuzufügen. Danach kann die Struktur ja wieder überschrieben werden. Diese ErzeugeFahrzeug-Funktion wird also beim Programmstart über eine Schleife mehrmals aufgerufen, bis alle vorhandenen Profile in die Map geladen sind.
Also grob beschrieben.
Oder hab ich jetzt einen Denkfehler?
Ich glaube ich muss da auch bei den Zeigern etwas umdenken. Ich kannte es von anderen Sprachen bisher so, dass ich eben einen Zeiger deklarieren kann, dem ich dann eine Adresse eines Speicherbereichs/Variable zuweise. In PureBasic ist es wohl normal, dass man direkt einen Zeiger deklariert und ihn dann sofort einen Wert zuweist (wo immer dieser auch gespeichert wird

).
Oder ich steh grad total auf dem Schlauch
Also wenn ich das mal in C als Beispiel nehme:
...hier zeigt "*zeiger" jetzt auf die Variable "a" (also auf 5), bzw. "zeiger" beinhaltet die Adresse zu "a".
Es würde auch gehen (wie in PureBasic):
Aber meines Wissens ist der Speicher dann ja nicht reserviert und es führt unter Umständen zu nem Programm-Crash.
Ist das in PureBasic nicht so?