Equals() En Gambas3


sulky16v2
Objetivo: Equals() En Gambas3
Muy buenos dias compañeros, les queria hacer una consulta, alguien ha programado la función Equals() para comparar objetos en Gambas3? he estado leyeno sobre la clase Object en Gambss3 y me di cuenta que no viene incorporada, la trate de hacer a mano pero creo que me confundí un poco la sintaxis de Visual Basic y la de gambas, en VB.net hay un objeto llamado TypeOf que nos permite saber de que tipo es un objeto, pero creo que el TypeOf de gambas no devuelve un Bool sino que un entero jaja estoy un poco confundido, si alguien puede darme una mano le estaría agradecido, saludos a todos.

Dejo como ejemplo como es la función en .NET

Public Overrides Function Equals(obj As Object) As Boolean
Dim valido As Boolean = False
If TypeOf obj Is Estudiante Then
Dim estudiante As Estudiante
estudiante = DirectCast(obj, Persona)
If estudiante.Codigo() = Me.Codigo()
valido = True
End If
End If
Return valido
End Function

última edición por Invitado el Sabado, 09 Abril 2016, 17:11; editado 2 veces
Objetivo: Re: Equals() En Gambas3
Si la idea es saber si dos objetos son iguales no deberías usar método especial " _compare "

Dicho esto desde la comodidad de la teoría.

Perfil MP  
Objetivo: Re: Equals() En Gambas3
Typeof devuelve un entero que corresponde con una constante de gambas
gb.null
gb.integer
gb.short,
gb.string
etc etc

Perfil MP  
sulky16v2
Objetivo: Re: Equals() En Gambas3
shordi escribió: [Ver mensaje]
Typeof devuelve un entero que corresponde con una constante de gambas
gb.null
gb.integer
gb.short,
gb.string
etc etc


Es interesante saberlo, en pocas palabras no se comporta igual, voy a seguir buscando, muchas gracias.

Objetivo: Re: Equals() En Gambas3
shordi escribió: [Ver mensaje]
Typeof devuelve un entero que corresponde con una constante de gambas
gb.null
gb.integer
gb.short,
gb.string
etc etc

Solo para añadir, a lo que escribió el amigo shordi, que el entero devuelto es uno de los "Gambas datatypes identifiers" contenidos en el fichero fuente /....../main/share/gambas.h, y en las enum del fichero fuente /......./main/share/gb_type_common.h .



Curiosidad:
Es posible obtener el entero, que representa en gambas el tipo de valor, tambien con este codigo:
Public Sub Main()

Dim bo As Boolean
Dim p As Pointer

p = VarPtr(bo)

Print Byte@(p - 8) ' ...muy probable que con sistemas de 32-bit el numero sea 4

End



Saludos

última edición por vuott el Sabado, 09 Abril 2016, 23:55; editado 2 veces
Perfil MP  
sulky16v2
Objetivo: Re: Equals() En Gambas3
vuott escribió: [Ver mensaje]
shordi escribió: [Ver mensaje]
Typeof devuelve un entero que corresponde con una constante de gambas
gb.null
gb.integer
gb.short,
gb.string
etc etc

Solo para añadir, a lo que escribió el amigo shordi, que el entero devuelto es uno de los "Gambas datatypes identifiers" contenidos en el fichero fuente /....../main/share/gambas.h, y en las enum del fichero fuente /......./main/share/gb_type_common.h .



Curiosidad:
Es posible obtener el entero, que representa en gambas el tipo de valor, tambien con este codigo:
Public Sub Main()

Dim bo As Boolean
Dim p As Pointer

p = VarPtr(bo)

Print Byte@(p - 8) ' ...muy probable que con sistemas de 32-bit el numero sea 4

End



Saludos


Muchas gracias che!, admiro mucho el buen compañerismo que hay en esta comunidad, siempre que hago una pregunta hay alguien dispuesto a compartir sus conocimientos, un saludo grande a todos.


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.5193s (PHP: -87% SQL: 187%)
Consultas SQL: 46 - Debug off - GZIP Activado