Objeto dentro d eestructuta

08/09/2006 - 19:14 por hugo | Informe spam
Hola grupo:

Tengo una estructura que contiene una propiedad cuyo tipo es el de una
cierta clase.
Mi pregunta es que sucede cuando copio en una variable del tipo de esa
estructura en otra.
La estructura es por valor y por lo tanto se crea una copia de la misma y no
una referencia.
Pero que pasa con esa propiedad. Se va a copiar en la otra variable una
referencia al objeto o se crea una copia.
Basicamnete lo que quiero saber es si una vez copiadas las estructuras,
ambas apuntan al mismo objeto a a objetos diferentes.

Gracias y saludos

Preguntas similare

Leer las respuestas

#1 neualex
08/09/2006 - 19:56 | Informe spam
Hola Hugo

Teniendo en cuenta de que estas pasando dicha variable por valor, se
creara una copia entera a la variable asignada.

Puedes probar dandoles valores distintos y veras que estos no apuntan
al mismo objeto.

Saludos.


hugo wrote:
Hola grupo:

Tengo una estructura que contiene una propiedad cuyo tipo es el de una
cierta clase.
Mi pregunta es que sucede cuando copio en una variable del tipo de esa
estructura en otra.
La estructura es por valor y por lo tanto se crea una copia de la misma y no
una referencia.
Pero que pasa con esa propiedad. Se va a copiar en la otra variable una
referencia al objeto o se crea una copia.
Basicamnete lo que quiero saber es si una vez copiadas las estructuras,
ambas apuntan al mismo objeto a a objetos diferentes.

Gracias y saludos
Respuesta Responder a este mensaje
#2 hugo
08/09/2006 - 20:12 | Informe spam
gracias, lo voy a probar

"neualex" escribió en el mensaje
news:
Hola Hugo

Teniendo en cuenta de que estas pasando dicha variable por valor, se
creara una copia entera a la variable asignada.

Puedes probar dandoles valores distintos y veras que estos no apuntan
al mismo objeto.

Saludos.


hugo wrote:
> Hola grupo:
>
> Tengo una estructura que contiene una propiedad cuyo tipo es el de una
> cierta clase.
> Mi pregunta es que sucede cuando copio en una variable del tipo de esa
> estructura en otra.
> La estructura es por valor y por lo tanto se crea una copia de la misma


y no
> una referencia.
> Pero que pasa con esa propiedad. Se va a copiar en la otra variable una
> referencia al objeto o se crea una copia.
> Basicamnete lo que quiero saber es si una vez copiadas las estructuras,
> ambas apuntan al mismo objeto a a objetos diferentes.
>
> Gracias y saludos

Respuesta Responder a este mensaje
#3 Jesús López
08/09/2006 - 22:03 | Informe spam
Cuando asignas una variable de tipo estructura a otra, todos los miembros de
las estructura se copian, si uno de los miembros de la estructura es de tipo
referencia, se copia la referencia, con lo que la segunda copia de la
estructura tiene un miembro que hace referencia al mismo objeto que el mismo
miembro de la primera estructura.

Por ejemplo. Sea:

Public Class MiClase
Public Campo As Integer
End Class

Public Structure MiStructura
Public Objeto As MiClase
End Estructure

Sub Prueba()

Dim A As MiStructura
A.Objeto = New MiClase()
A.Objeto.Campo = 1

Dim B As MiStructura = A
Debug.Writeline(B.Objeto.Campo.ToString()) ' Muestra 1

B.Objeto.Campo = 2

Debug.Writeline(A.Objeto.Campo.ToString())' Muestra 2. Lo que demuestra
que A.Objeto y B.Objeto hacen referencia al mismo objeto.

End Sub
Saludos:

Jesús López




"hugo" escribió en el mensaje
news:
gracias, lo voy a probar

"neualex" escribió en el mensaje
news:
Hola Hugo

Teniendo en cuenta de que estas pasando dicha variable por valor, se
creara una copia entera a la variable asignada.

Puedes probar dandoles valores distintos y veras que estos no apuntan
al mismo objeto.

Saludos.


hugo wrote:
> Hola grupo:
>
> Tengo una estructura que contiene una propiedad cuyo tipo es el de una
> cierta clase.
> Mi pregunta es que sucede cuando copio en una variable del tipo de esa
> estructura en otra.
> La estructura es por valor y por lo tanto se crea una copia de la misma


y no
> una referencia.
> Pero que pasa con esa propiedad. Se va a copiar en la otra variable una
> referencia al objeto o se crea una copia.
> Basicamnete lo que quiero saber es si una vez copiadas las estructuras,
> ambas apuntan al mismo objeto a a objetos diferentes.
>
> Gracias y saludos





Respuesta Responder a este mensaje
#4 hugo
11/09/2006 - 18:33 | Informe spam
ok. siendo asi tendre que cambiar ciertas cosas.
Gracias a todos

"Jesús López" escribió en el mensaje
news:
Cuando asignas una variable de tipo estructura a otra, todos los miembros


de
las estructura se copian, si uno de los miembros de la estructura es de


tipo
referencia, se copia la referencia, con lo que la segunda copia de la
estructura tiene un miembro que hace referencia al mismo objeto que el


mismo
miembro de la primera estructura.

Por ejemplo. Sea:

Public Class MiClase
Public Campo As Integer
End Class

Public Structure MiStructura
Public Objeto As MiClase
End Estructure

Sub Prueba()

Dim A As MiStructura
A.Objeto = New MiClase()
A.Objeto.Campo = 1

Dim B As MiStructura = A
Debug.Writeline(B.Objeto.Campo.ToString()) ' Muestra 1

B.Objeto.Campo = 2

Debug.Writeline(A.Objeto.Campo.ToString())' Muestra 2. Lo que


demuestra
que A.Objeto y B.Objeto hacen referencia al mismo objeto.

End Sub
Saludos:

Jesús López




"hugo" escribió en el mensaje
news:
> gracias, lo voy a probar
>
> "neualex" escribió en el mensaje
> news:
>> Hola Hugo
>>
>> Teniendo en cuenta de que estas pasando dicha variable por valor, se
>> creara una copia entera a la variable asignada.
>>
>> Puedes probar dandoles valores distintos y veras que estos no apuntan
>> al mismo objeto.
>>
>> Saludos.
>>
>>
>> hugo wrote:
>> > Hola grupo:
>> >
>> > Tengo una estructura que contiene una propiedad cuyo tipo es el de


una
>> > cierta clase.
>> > Mi pregunta es que sucede cuando copio en una variable del tipo de


esa
>> > estructura en otra.
>> > La estructura es por valor y por lo tanto se crea una copia de la


misma
> y no
>> > una referencia.
>> > Pero que pasa con esa propiedad. Se va a copiar en la otra variable


una
>> > referencia al objeto o se crea una copia.
>> > Basicamnete lo que quiero saber es si una vez copiadas las


estructuras,
>> > ambas apuntan al mismo objeto a a objetos diferentes.
>> >
>> > Gracias y saludos
>>
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida