Hola Xavi,


José,
Should not it shows 'Hello' instead of 'Bye'??
No consigo reproducir el problema: con tres PRGs me presenta 'Hello'.
Por cierto, XEdit 2 (abril 2008) tiene problemas para gestionar el "Módulo principal" si no lo has creado el primero. :)

Un saludo
Xavi


Gracias por responder. Al final resulta que es un error mío... (realmente no comprobé el ejemplo, y claro, el ejemplo funciona bien). El problema es en realidad la definición del método desarrollado en C. Fíjate que en la clase 'MyOtherClass' el método 'MyMethod' no está definido y sí desarrollado.

// one.prg

CLASS MyClass
   METHOD MyMethod() INLINE 'Bye'
   METHOD New() INLINE Self
ENDCLASS

// Two.Prg

CLASS MyOtherClass FROM MyClass
  // METHOD MyMethod()
   METHOD OtherMethod() INLINE .T.
ENDCLASS

#pragma BEGINDUMP
#include "hbapi.h"

HB_FUNC_STATIC( MYOTHERCLASS_MYMETHOD )
{
   hb_retc("Hello");
}

#pragma ENDDUMP

// Three.prg
FUNCTION MAIN()

   LOCAL o

   o := MyOtherClass():New()

   ? o:MyMethod() // --> 'Bye'

RETURN NIL

Al compilar estos tres prgs no hay queja alguna usando -w3. Y por eso no me di cuenta de que el método que realmente se estaba ejecutando era el del padre.

Saludos y gracias por tu ayuda.
José Luis Capel

_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to