Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Variable Por Referencia
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Variable Por Referencia 
 
Perdonar mi ignorancia, pero como puedo enviar a una funcion una variable por refencia, en Lenguaje C se envia con un '&' pero en gambas no tengo ni idea.
 



 
campanillas - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Variable Por Referencia 
 
Bienvenida!

Extraído del wiki de Gambas:


Los objetos se acceden "por referencia", por ejemplo usando un puntero hacia ellos, usando una variable cuyo valor es la dirección en memoria de su estructura de datos.

    Se puede ver la dirección de un objeto usando la instrucción PRINT:

DIM aStr AS NEW String[]

PRINT aStr

(String[] 0x80dccf8)


Supongo que creando una variable del tipo Pointer y asignándole una dirección de memoria, se podría hacer lo que quieres, pero no estoy seguro.

Quizás alguien más pueda arrojar algo de luz sobre este particular.

Saludos
 




===================
Jesús Guardón

Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".

"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
 
jguardon - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Variable Por Referencia 
 
Hola
En gambas no se pueden pasar variables por referencia aunque por lo visto será posible en un futuro mediante la palabra clave byref.

Actualmente las variables se pasan por valor.

Citar:
En gambas, los tipos de datos simples (Integer, String, etc.) se pasan por valor a los procedimientos y funciones. No se pueden pasar por referencia como en Visual Basic. Recuerde que VB pasa los parámetros por referencia si no se usa la palabra clave ByVal, así que tenga cuidado cuando intente portar un proyecto VB. También se pasan siempre por referencia el contenido de los tipos de datos objeto (array , collections, objects) en ambos lenguajes.

Diferencias con Visual Basic

Efectivamente llevo curioseando unos días en los temas de punteros y estructuras. Aún no tengo nada claro. En principio el wiki de gambas dice lo que dice.
 



 
soplo - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Variable Por Referencia 
 
Siento ser tan torpe, pero lo que quiero es que a una funcion le llegue una variable por referencia para asignarle un valor seria asi???
public function suma (a as string, b as string, c as NEW string[])$

c= a & " " & b
 



 
campanillas - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Variable Por Referencia 
 
y que tal
c=funcion(a,b)

private funcion(p1 as string, p2 as string) as string
return p1 & " " & p2(
end
 



 
soplo - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Variable Por Referencia 
 
gracias pero lo anterior era solo un ejemplo, ya me habeis indicado de que no se puede trabajar con variable por referencia solo por valor.
 



 
campanillas - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Variable Por Referencia 
 
Bueno en principio eso es así hoy por hoy (aunque no será así en el futuro) pero estamos viendo si se puede hacer por medio de enviar punteros. Solo que ese es un tema que al menos yo tengo muy verde en gambas.

En C no tiene nada del otro mundo, pero gambas es otra cosa. Ya sabes

 
 



 
soplo - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Variable Por Referencia 
 
Las variables por referencia sólo están implementadas en Gambas3 y nunca lo estarán en Gambas2. Aquí se puede ver la forma de usarlo en Gambas3, al final de la página (en inglés):

http://gambasdoc.org/help/lang/methoddecl?en

Saludos
 




===================
Jesús Guardón

Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".

"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
 
jguardon - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Variable Por Referencia 
 
Gracias a todos por la ayuda.
 



 
campanillas - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
Ocultar¡Este tema fue útil?

 

Elegir valoración:                       

Media de valoración Valoración mínima Valoración máxima Número de valoraciones
0.00 0 0 0
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Variable Global Contra Variable Por Refere... Shell General 2 Martes, 28 Octobre 2014, 10:36 Ver último mensaje
jsbsan
No hay nuevos mensajes Referencia De Controles Por Nombre shordi General 4 Martes, 17 Noviembre 2009, 21:15 Ver último mensaje
shordi
No hay nuevos mensajes Objetos: Guardar Y Recuperar Referencia jsbsan General 4 Viernes, 08 Junio 2012, 17:31 Ver último mensaje
jsbsan
No hay nuevos mensajes Referencia A Objeto Con El Nombre En Una C... pantitas General 15 Martes, 07 Julio 2015, 19:10 Ver último mensaje
vuott
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
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
No puede descargar archivos
No puede publicar eventos en el calendario