CADsite forum

AutoCAD => Dot Net API => Topic gestart door: EddyBeerke op ma 12 08 2013, 09:08:31

Titel: variable VB.net [Opgelost]
Bericht door: EddyBeerke op ma 12 08 2013, 09:08:31
Ik het een stukje code gemaakt maar als ik EP vul met SP en EP aanpas, dan wordt SP ook aangepast en krijgt dezelfde waarde als EP.



a = 1.5
SP(0) = 0.0
SP(1) = 0.0
SP(2) = 0.0


Dim EP(2) As Double
EP = SP
EP(0) = EP(0) + a
EP(1) = EP(1) + 1


Na deze code uitgevoerd te hebben ziet EP en SP er zo uit:


SP(0) = 1.5
SP(1) = 0.0
SP(2) = 0.0

EP(0) = 1.5
EP(1) = 0.0
EP(2) = 0.0

't Lijkt mij eigenlijk te simpel maar ik weet niet hoe ik dit nu kan oplossen. Hoe kan het dat ik maar één variable aanpas en de andere mee gaat?
Titel: Re: variable VB.net
Bericht door: sschevers op ma 12 08 2013, 15:30:43
Eddy,

check bijgaande link een
http://www.dotnetperls.com/array-copy-vbnet (http://www.dotnetperls.com/array-copy-vbnet)

en de uitleg waarom het fout gaat
http://stackoverflow.com/questions/3915394/assigning-an-array-of-structure-to-another-array-of-same-structure (http://stackoverflow.com/questions/3915394/assigning-an-array-of-structure-to-another-array-of-same-structure)

Stephan
Titel: Re: variable VB.net
Bericht door: EddyBeerke op ma 12 08 2013, 16:16:18
Oké, dus ik had eigenlijk dit moeten doen:

Dim EP(2) As Double
Array.Copy(SP, EP, EP.Length) ' of i.p.v. EP.Length kan ik 3 geven
EP(0) = EP(0) + a
EP(1) = EP(1) + 1


In VBA was dat niet.

Bedankt ik ga dit morgen even uitproberen.
Titel: Re: variable VB.net
Bericht door: EddyBeerke op di 13 08 2013, 07:46:36
Dit is de oplossing:
Array.Copy(SP, EP, EP.Length)

Bedankt Stephan.  :vreegoe: