Click here to Skip to main content
15,886,836 members
Home / Discussions / .NET (Core and Framework)
   

.NET (Core and Framework)

 
QuestionArray of Double - Shallow vs. Deep Cloning? Pin
M-Badger5-Oct-12 7:01
M-Badger5-Oct-12 7:01 
So I'm quite comfortable with shallow and deep cloning for value and reference types but want to check how this plays out for an array of a value type.

I have a 2D array of double and since the array contains value types I think the Array.Clone method (whilst only guaranteeing shallow copies) will give a deep copy in this instance. Am I right?
VB
Private _matrix as double(,)

Public Function CopyToArray() as Double(,)
    Return Me._matrix.Clone()
End Fucntion

Public Function Copy() As Matrix
    Return New Matrix(Me.CopyToArray())
End Function

Public Sub New(ByVal array As Double(,))
    Me._matrix = array
End Sub

The constructor assumes that the user wants to assign the 2D array of double(,) they have already created to the new matrix instance and hence doesn't use Array.Clone (and since the array is a class and is therefore a reference type, ByVal essentially has no meaning in this context). Did I get that bit right?

Thanks,
Mike
AnswerRe: Array of Double - Shallow vs. Deep Cloning? Pin
Eddy Vluggen5-Oct-12 12:25
professionalEddy Vluggen5-Oct-12 12:25 
GeneralRe: Array of Double - Shallow vs. Deep Cloning? Pin
M-Badger7-Oct-12 9:56
M-Badger7-Oct-12 9:56 
AnswerRe: Array of Double - Shallow vs. Deep Cloning? Pin
Eddy Vluggen8-Oct-12 0:39
professionalEddy Vluggen8-Oct-12 0:39 
GeneralRe: Array of Double - Shallow vs. Deep Cloning? Pin
M-Badger9-Oct-12 23:04
M-Badger9-Oct-12 23:04 
GeneralRe: Array of Double - Shallow vs. Deep Cloning? Pin
Eddy Vluggen10-Oct-12 1:22
professionalEddy Vluggen10-Oct-12 1:22 
GeneralOT Pin
M-Badger10-Oct-12 2:23
M-Badger10-Oct-12 2:23 
GeneralRe: OT Pin
Eddy Vluggen10-Oct-12 9:00
professionalEddy Vluggen10-Oct-12 9:00 
GeneralRe: Array of Double - Shallow vs. Deep Cloning? Pin
dojohansen10-Oct-12 5:36
dojohansen10-Oct-12 5:36 
GeneralRe: Array of Double - Shallow vs. Deep Cloning? Pin
Eddy Vluggen10-Oct-12 9:09
professionalEddy Vluggen10-Oct-12 9:09 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.