Inicializar un Array de Structures con Arrays en la Structure

27/09/2004 - 00:10 por 44r0x0r44 | Informe spam
Buenas noches lectores!

Una vez más he tropezado con un enigma, a ver si me podeis
ayudar (gracias por adelantado)

Tengo el siguiente Structure:

Public Structure Test
Dim Name As String
Dim Values as Integer()

Public Sub New(N as String, V as Integer())
Name = N
Values = V
End Sub
End Structure

Seguidamente quiero inicializar un Array de estructuras Test:

Dim x as Test() = _
{New Test("a", {1, 2, 3}), _
New Test("b",{4, 5, 6})}

Pero con la sintaxis expuesta no es correcta en VB.NET
¿Como debo proceder si quiero Declarar e Inicializar a la vez?

Una vez más, gracias a todos.

Preguntas similare

Leer las respuestas

#6 44r0x0r44
27/09/2004 - 13:04 | Informe spam
A ver si lo he entendido bien: ¿Se pueden inicializar
arrays de estructuras tal y como lo estoy haciendo SIEMPRE
Y CUANDO estas estructuras no contengan otra matriz o array
en su interior?


Saludos,

La sintaxis de asignacion esta correcta para el arreglo de


estructuras, pero
el problema esta en que no sirve en este caso para el


arreglo de enteros.

La sentencia deberia ser:
Dim x As Test() = _
{
New Test("a", New Integer() {1, 2, 3}), _
New Test("b", New Integer() {4, 5, 6})
}

Saludos
Pedro Luna, MVP
Gye, Ecu

"44r0x0r44" escribió en el


mensaje
news:324d01c4a415$a7d7c220$
Buenas noches lectores!

Una vez más he tropezado con un enigma, a ver si me podeis
ayudar (gracias por adelantado)

Tengo el siguiente Structure:

Public Structure Test
Dim Name As String
Dim Values as Integer()

Public Sub New(N as String, V as Integer())
Name = N
Values = V
End Sub
End Structure

Seguidamente quiero inicializar un Array de estructuras Test:

Dim x as Test() = _
{New Test("a", {1, 2, 3}), _
New Test("b",{4, 5, 6})}

Pero con la sintaxis expuesta no es correcta en VB.NET
¿Como debo proceder si quiero Declarar e Inicializar a la vez?

Una vez más, gracias a todos.


.

Respuesta Responder a este mensaje
#7 44r0x0r44
27/09/2004 - 13:34 | Informe spam
3.- He hecho el riduculo :(

Tienes razón se hace como dicer.

Perdón.


me fijo... lo testeo... y... no

Dim x as Test() = New Test() {valores...}

1.- Sigue dando error "se esperaba una expresion"
2.- Te has dejado el "=" después de New Test() ;)


Pues es tal y como lo estoy haciendo y el compilador me
indica: "Se esperaba: expresión"



Fijate que debes hacerlo tanto para el array de Test como


el de enteros que
le pasas al constructor.

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo


.



.

Respuesta Responder a este mensaje
#8 Eduardo A. Morcillo [MS MVP VB]
27/09/2004 - 16:13 | Informe spam
A ver si lo he entendido bien: ¿Se pueden inicializar
arrays de estructuras tal y como lo estoy haciendo SIEMPRE
Y CUANDO estas estructuras no contengan otra matriz o array
en su interior?



No, no es eso. Es que debes crear cada array. El {} solo define los datos
del array pero no el array en si.

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida