Eingeschränkte Pointer

Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Neue Antwort erstellen

ProfJake

ehemals "DTC" / "Fabian Niemann"

Betreff: Eingeschränkte Pointer

BeitragMi, Apr 02, 2008 18:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Schönen Tag auch,
habe gerade BlitzMax bekommen, auf Version 1.28 geupdatet und muss nun feststellen,
dass nur noch Pointer auf Primitive Datentypen funktionieren, was sehr ärgerlich ist,
da ich gerne mit Pointern gearbeitet habe.
Die Frage ist jetzt, wie man solche Probleme jetzt ohne Pointer effizient löst?
Zum Beispiel wenn man große Arrays oder ähnliches an Funktionen übergeben will,
oder in einer Klasse eine Kopie einer bestehenden Klasse benötigt?
Wie macht ihr das?
 

ChristianK

BeitragMi, Apr 02, 2008 19:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Man hat zwar nur noch die Primitive-Pointer, aber Objekte können in Byte Ptr umgewandelt werden ( allerdings nicht umgekehrt ). Sibly hat Object Pointer raus genommen, weil zu unsicher ( wegen der Garbage Collection ).

Arrays werden generell by reference an Funktionen übergeben.

Code: [AUSKLAPPEN]
Function BlaBlubb:Int( array:Int[] )
   ' ...
End Function

Local myArray:Int[10]

BlaBlubb( myArray )

Und Objekte kannst du mit Reflection kopieren. Dreamora hat dazu mal eine sehr praktische Funktion geschrieben.
AdvanceLcd
Intel Core 2 Duo 3.2 GHz, 4 GB RAM, GeForce 8800 GTX | MacBook Pro 15,4″ Intel Core 2 Duo 2.4 GHz, 2 GB RAM, GeForce 8600M GT

ProfJake

ehemals "DTC" / "Fabian Niemann"

BeitragMi, Apr 02, 2008 19:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Das mit den Arrays ist sehr gut, darauf hatte ich gehofft.
Und über die Reflections werden ich mich gleich mal informieren..

Danke für die Hilfe.

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group