Perdon por escribir tanto pero en realidad lo que necesito hacer es esto:
Código:
class TPrueba; //Declaro la clase TPrueba
class TInt
{
public:
//Constructor y destructor
TInt();
~TInt();
//Declaraciones de las funciones para TInt
AnsiString toHex(int value);
private:
THilo* TPrueba::*Hilo; //Declaro el puntero a miembro
};
//La clase TPrueba
class TPrueba
{
friend class TInt; //Pongo esto para que pueda acceder al puntero al TThread que está en private
public:
TPrueba();
~TPrueba();
private:
THilo *Hilo; //Puntero a TThread
}
//Constructor de la clase TInt
TInt::TInt()
{
Hilo = &TPrueba::Hilo; //Le asigno la direccion del miembro TPrueba al puntero a miembro de la clase TInt
}
//Funcion miembro de la clase TInt que usa el puntero a miembro que creé
AnsiString __fastcall TInt::toHex(int value)
{
//Esto no lo quiere:
((THilo *)->Hilo)->toHex(value);
//He probado de todo pero no doy con el modo
}
No es mas que un ejemplo pero creo que ahora se entenderá mejor. Necesito hacer que funcione lo que está en la funcion miembro.