Declaración De Matriz


Objetivo: Declaración De Matriz
Estoy empezando a programar con gambas y tengo una duda. A la hora de declarar una matriz pongo Dim alumnos[2, 2] As String y me da un mensaje de error "Matrices incrustados están prohibidos aquí". No se que es lo que estoy haciendo mal.

Perfil MP  
Objetivo: Re: Declaración De Matriz
Los arrays nativos (o embebidos, como los llama Benoit) no se pueden declarar como variables locales ni pueden ser públicos en Gambas3.

http://gambasdoc.org/help/lang/arraydecl

Si realmente necesitas declarar una variable local o pública de algún tipo de array, prueba a declararla de forma dinámica de esta forma:

DIM alumnos AS NEW String[2, 2]


Saludos

Perfil MP  
Objetivo: Re: Declaración De Matriz
Incluir la sentencia o comando NEW fue por algún motivo en especial, ¿ no ?.

Yo no solía usar NEW

Public nombres[3, 3] As String


Estaba usándola como la declaración de (arreglo,array,matriz) estatico.

[ STATIC ] { PUBLIC | PRIVATE } Identificador [ Array dimensions ... ] AS Native Datatype

Cuando la declaración debe ser:

Public|Private|DIM Identificador AS [ NEW ] TipodeDato [ DimensionArreglo ... ]

Saludos.

última edición por Shell el Sabado, 03 Noviembre 2012, 14:15; editado 1 vez
Objetivo: Re: Declaración De Matriz
Shell escribió: [Ver mensaje]
Incluir la sentencia o comando NEW fue por algún motivo en especial, ¿ no ?.


NEW es un operador. Sirve para reservar memoria dinámica para el objeto que estás creando, en definitiva para instanciar un nuevo objeto del tipo especificado.

En el ejemplo se está declarando e instanciando en la misma línea, pero también se puede declarar sin New e instanciar nuevas clases después, cuando sea necesario, por ejemplo:

Private alumnos as String[] ' global (de clase)

' y dentro de un método

Public MetodoX()

Dim profesores As Integer[] ' local

alumnos = New String[2, 2]

profesores = New Integer[]

End


No creo que una forma sea mejor que la otra, es cuestión de las necesidades de cada uno.


Saludos

Perfil MP  
Objetivo: Re: Declaración De Matriz
Muchas gracias por todo.

Perfil MP  

Página 1 de 1


  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.4095s (PHP: -84% SQL: 184%)
Consultas SQL: 46 - Debug off - GZIP Activado