Foros del Web » Programación para mayores de 30 ;) » .NET »

Pasar un arreglo por parametro en forma implicita

Estas en el tema de Pasar un arreglo por parametro en forma implicita en el foro de .NET en Foros del Web. Hola, tengo una funcion de la siguiente forma: Código: public class clase Public Function f (byval ar() As String) As Integer Dim largo As Integer ...
  #1 (permalink)  
Antiguo 02/02/2009, 12:40
 
Fecha de Ingreso: enero-2009
Mensajes: 24
Antigüedad: 15 años, 3 meses
Puntos: 0
Pasar un arreglo por parametro en forma implicita

Hola,

tengo una funcion de la siguiente forma:

Código:
public class clase
    Public Function f (byval ar() As String) As Integer
       Dim largo As Integer = ar.length
       .
       .
       return (i)
    End Function
end Class
Luego, cuando la llamo, mi idea es pasarle el arreglo directamente, de la siguiente forma:

Código:
    Dim ob As New clase()
    ob.f( {"a","b","c", ...} )
Pero me aparece un error. sin embargo, la manera que encontre para pasarle el arreglo, es asi:

Código:
    Dim datos() As String = {"a","b","c","d","e", ....}
    Dim ob As New clase()
    ob.f( datos )
Me gustaria saber su puedo pasarle a mi metodo el arreglo en forma directa y no tener que crear un variable de tipo arreglo antes.

Gracias
  #2 (permalink)  
Antiguo 02/02/2009, 17:32
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 16 años, 8 meses
Puntos: 87
Respuesta: Pasar un arreglo por parametro en forma implicita

pues solo anteponiendo el new a tu arreglo, si no estan relacionados a un objeto instanciado sea un tipo nativo no es posible.

new string(){.....} o q se yo la sintaxis no la tengo a la mano pero sin hacer un objeot explicitamente.
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:47.