Instanz kopieren?

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

Ratchet

Betreff: Instanz kopieren?

BeitragMo, Jan 10, 2005 20:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Tja, wie mach ich das am besten? Gibt es nicht sowas wie Copy?

Suco-X

Betreff: .......

BeitragMo, Jan 10, 2005 20:47
Antworten mit Zitat
Benutzer-Profile anzeigen
z.b.
Code: [AUSKLAPPEN]

local array1:string[] = ["Test11","Test2"]
local array2:string[array1.length]

MemCopy(Array2,array1,SizeOf(array1))


Mfg Suco
[/quote]
Intel Core 2 Quad Q8300, 4× 2500 MHz, 4096 MB DDR2-Ram, GeForce 9600GT 512 MB
 

Demon

BeitragMo, Jan 10, 2005 20:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Einfacher wärs vielleicht mit so einer Konstruktion, wie:

Code: [AUSKLAPPEN]

  Local MyVar:MyType = MyOriginalVar


Wink
Don't drink and derive!
 

Nemesis

BeitragMo, Jan 10, 2005 21:15
Antworten mit Zitat
Benutzer-Profile anzeigen
damit kopierst du aber nur die adresse

Ratchet

BeitragMo, Jan 10, 2005 21:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Genau und ich möchte ja kopieren und nicht referenzieren.
Aber mit MemCopy bekomme ich es nicht hin. Ich hab wie gesagt eine Instanz die ich kopieren möchte und kein Array wie in deinem Beispiel, Suco-X.

EDIT: Halt, Kommando zurück. Wenn man die Funktion auch richtig benutzt funktioniert das sogar Very Happy

Danke!
  • Zuletzt bearbeitet von Ratchet am Mo, Jan 10, 2005 21:24, insgesamt einmal bearbeitet
 

Nemesis

BeitragMo, Jan 10, 2005 21:23
Antworten mit Zitat
Benutzer-Profile anzeigen
na denke es gibt da keine allgemeine function. wenn das type keine clone methode anbietet wird das ned gehen. (Also du muss hald eine Instanz mit genau den gleichen Eigenschaften erzeugen.)

Ratchet

BeitragMo, Jan 10, 2005 21:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich kann mir natürlich auch eine Clone Methode schreiben, ist wahrscheinlich das Beste.
 

Demon

BeitragMo, Jan 10, 2005 22:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich Idiot!

Ich meinte natürlich nicht

Local MyVar:MyType = MyOriginalVar

sondern

Local MyVar:MyType =new MyOriginalVar

[Edit]

Ein Beispiel Smile:

Code: [AUSKLAPPEN]


Type TFloat
  Field MyF:Float = 0
EndType

Local MyVar:TFloat = New TFloat

MyVar.MyF = 13.5

Local MySecVar:TFloat = New MyVar

MySecVar.MyF = 1

Print MyVar.MyF
Print MySecVar.MyF


[/Edit]

[Edit2]

Ich seh grad, das kopiert auch nur den Typ von MyVar, aber nicht die Daten, also doch so machen wie Suco sagte.

[/Edit]
Don't drink and derive!

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group