Principales respuestas
Declarar Propiedad del tipo Byte

Pregunta
-
Mi duda es la siguiente:
Lo que pasa es que declare una propiedad de está manera:
Private foto As Byte Public Property PFoto As Byte Get Return foto End Get Set(value As Byte()) foto = value End Set End Property
Pero al tratar de usarlo de está manera me marco error. Entonces hice un pequeño cambio:
Private foto As Byte() Public Property PFoto As Byte() Get Return foto End Get Set(value As Byte()) foto = value End Set End Property
Entonces al parecer esto esta bien. Pero ¿Cual es la diferencia que lleve o no paréntesis? y ¿esto aplica para los demás tipos de datos?
Y eso que encontré otros ejemplos donde dentro del paréntesis llevan una coma (,).
Muchas gracias por sus explicaciones de antemano.
Nota: mil disculpas, porque creo que esto es de muy de novatos :)
Respuestas
-
Los paréntesis indican que estás definiendo una matriz o array de elementos.
Es decir, al declarar una variable como Byte (Dim value As Byte) estás declarando una variable que puede almacenar un byte, mientras que al declarar una variable como Byte (Dim value As Byte()) estás declarando una matriz de elementos Byte donde la variable value puede almacenar una serie de valores Byte.
En el primer caso para recuperar el Byte almacenado en la variable se recupera el valor de la variable (Dim valor = value), mientras que en el segundo caso para recuperar un Byte concreto de la matriz deberás indicar el índice que representa la posición del Byte dentro de la matriz (Dim valor = value(4))
Al declarar una variable con el formato value As Byte(,) lo que haces es declarar una matriz bidimensional en la que los elementos se acceden a través de dos índices (uno por cada dimensión): Dim valor = value(2,4)
Puedes obtener más información sobre el uso de matrices en:
Píldoras .NET
Artículos, tutoriales y ejemplos de código .NETPíldoras JS
Artículos, tutoriales y ejemplos de código JavaScript, HTML5, CSS3, ...- Propuesto como respuesta Enrique M. MontejoModerator domingo, 28 de febrero de 2016 7:33
- Marcado como respuesta Enrique M. MontejoModerator martes, 1 de marzo de 2016 7:02
-
La diferencia entre Byte y Byte() es que el primero es un solo byte y el segundo es un array de bytes. Y el motivo de que tu primer ejemplo arroje un error es que has mezclado las dos cosas, es decir, en unos sitios usas Byte y en otro sitio usas Byte(). Es lícito declarar una propiedad que maneje un único byte, y también es lícito declarar una propiedad que maneje un array de bytes, pero lo que no puedes hacer es mezclar las dos cosas a la vez en distintos sitios de una sola propiedad.
- Propuesto como respuesta Enrique M. MontejoModerator domingo, 28 de febrero de 2016 7:33
- Marcado como respuesta Enrique M. MontejoModerator martes, 1 de marzo de 2016 7:02
Todas las respuestas
-
Los paréntesis indican que estás definiendo una matriz o array de elementos.
Es decir, al declarar una variable como Byte (Dim value As Byte) estás declarando una variable que puede almacenar un byte, mientras que al declarar una variable como Byte (Dim value As Byte()) estás declarando una matriz de elementos Byte donde la variable value puede almacenar una serie de valores Byte.
En el primer caso para recuperar el Byte almacenado en la variable se recupera el valor de la variable (Dim valor = value), mientras que en el segundo caso para recuperar un Byte concreto de la matriz deberás indicar el índice que representa la posición del Byte dentro de la matriz (Dim valor = value(4))
Al declarar una variable con el formato value As Byte(,) lo que haces es declarar una matriz bidimensional en la que los elementos se acceden a través de dos índices (uno por cada dimensión): Dim valor = value(2,4)
Puedes obtener más información sobre el uso de matrices en:
Píldoras .NET
Artículos, tutoriales y ejemplos de código .NETPíldoras JS
Artículos, tutoriales y ejemplos de código JavaScript, HTML5, CSS3, ...- Propuesto como respuesta Enrique M. MontejoModerator domingo, 28 de febrero de 2016 7:33
- Marcado como respuesta Enrique M. MontejoModerator martes, 1 de marzo de 2016 7:02
-
La diferencia entre Byte y Byte() es que el primero es un solo byte y el segundo es un array de bytes. Y el motivo de que tu primer ejemplo arroje un error es que has mezclado las dos cosas, es decir, en unos sitios usas Byte y en otro sitio usas Byte(). Es lícito declarar una propiedad que maneje un único byte, y también es lícito declarar una propiedad que maneje un array de bytes, pero lo que no puedes hacer es mezclar las dos cosas a la vez en distintos sitios de una sola propiedad.
- Propuesto como respuesta Enrique M. MontejoModerator domingo, 28 de febrero de 2016 7:33
- Marcado como respuesta Enrique M. MontejoModerator martes, 1 de marzo de 2016 7:02
-
-
-
[...] "Dim byTmpData(2000) As Byte"
no entiendo la segunda sentencia de declaración me podría ayudar?
Cuando haces
Dim A(B) As C
significa: "Declaramos una variable que se llama A y cuyo contenido es un array con capacidad para un numero B de elementos de tipo C".
En el ejemplo que has puesto, byTmpData es un array con 2000 elementos, cada uno de los cuales es un Byte.