Anterior
 Volver
 Siguiente

 
Asunto: [CORBA-Comp] Re:_[CORBA-Comp]_Invocación_de_métodos_
Fecha: Mon Jun 5 18:53:14 2000
De: Diego Sevilla Ruiz <dsevilla@ditec.um.es>

 
On Mon, 5 Jun 2000, Emilio Hernández Martín wrote:

> 
>     Hola.
> 
>     No sé si será una tontería pero allá va:
> 
>     Si tengo 2 programas ('A.cc' y 'B.h', por ejemplo) donde su parte de su
> código es:
> 
> *****************
> // A.cc
> #include "B.h"
> ...
> 
> class A{
>     int i;
>   public:
>     int get_int();
> };
> 
> int A::get_int()
> {
>   return i;
> }
> ...
> *****************
> y por otra parte.
> 
> *****************
> 
> // B.h
> ...
> class B{
>     int j;
>   public:
>     void put_int();
> };
> 
> void B::put_int()
> {
>   j = A::get_int(); // LÍNEA CLAVE. Así da error.
> }
> ...
> *******************
> 
>     ¿Es posible (en la LÍNEA CLAVE) invocar desde el programa B un método
> del programa A? Si es así, ¿cómo se haría?

Uy! que jaleo... (perdonad por las tildes, pero es que el pine...)

En primer lugar:
En el fichero B, si quieres utilizar cosas de A, debes incluir el fichero
A.h (o algo similar)

En la LINEA CLAVE no puedes utilizar la forma A::get_int() si get_int no
es un metodo static de la clase "A". En todo caso, debes crear un objeto
de la clase A, y aplicarle el metodo. Aunque esto es un poco extra~no,
porque ninguna clase tiene manera de modificar su variable interna, por lo
que su valor, tal y como muestras el codigo, sera NO DEFINIDO.

Y por ultimo... te has encontrado este problema al programar con CORBA?

> 
>     Muchas gracias.
> 

De nada, hombre.
>     Emilio.
> 
> 
Saludos.
	diego.

-- 
Diego Sevilla Ruiz - http://ditec.um.es/~dsevilla/ - dsevilla@um.es
Departamento de Ingeniería y Tecnología de Computadores
Facultad de Informática. Universidad de Murcia
Campus de Espinardo - 30080 Murcia (SPAIN). Tel. +34-968-367570
\huge d\em\kern-.36em\lower-.2ex\hbox{\small sevilla}\kern-.1em@um.es

$_="\\l/) (>".     "_'\n<";@@=        /.|\n/g;$_=
"\@".     "\007f".   "DDq".           "DD5".   "\204".
"\@".     "DT4CE".    "D54E".         "DD".    "\244".
"\021".   "dBDTC".     "\010DD".      "\200\$FD\024".
"GDAG".   "DAGDT".       "CqI";$c     =0;$p    =5;for$q
(/./g)    {$q=              ord$q;    for(a,   b){$z[$c]
=$@[$p+=($q&15)    -4];$q>>=4;$c+=33  ;$c>98   &&($c-=98);}};print@z;

--------------------------------------------------------------------------
Esta es la lista de discusión de CORBA y Componentes Software (corba-comp)
--------------------------------------------------------------------------
Suscripcion: Envie un correo a mailto:Majordomo@ditec.um.es?body=subscribe%20corba-comp
Eliminar su suscripcion: mailto:Majordomo@ditec.um.es?body=unsubscribe%20corba-comp
Informacion de la lista: mailto:Majordomo@ditec.um.es?body=info%20corba-comp
Problemas: mailto:corba-comp-owner@ditec.um.es
Indices de la lista: http://www.ditec.um.es/~dsevilla/corba/
--------------------------------------------------------------------------

 Anterior
 Volver
 Siguiente