Alguien sabe como asociar en c++ con clases o algun libro que me recomienden donde me explique y diga como hacerlo :o
Que te refieres con asocias clases?
al tipo de Relación llamado Asociación (conexión entre clases), pero no tengo idea de como hacerlo,
¿Punteros? ¿Herencia?
Polimorfismo? Herencia? Que es?
Creo que herencia, solo se que se tienen que comunicar dos clases por medio de punteros o variables :S
Eso no es herencia:
En el ejemplo que pongo se ve cómo se pueden comunicar clases sin necesidad de herencia.
#include <iostream>
#include <string>
class B;
class A
{
friend class B;
public:
A( )
: b( nullptr )
{ }
void SetB( B* ptr_b )
{ b = ptr_b; }
void EnviarMensaje( const std::string& mensaje ) const;
private:
B* b;
void PonerMensaje( const std::string& mensaje ) const
{ std::cout << "A: " << mensaje << std::endl; }
};
class B
{
friend class A;
public:
B( )
: a( nullptr )
{ }
void SetA( A* ptr_a )
{ a = ptr_a; }
void EnviarMensaje( const std::string& mensaje ) const
{ if ( a ) a->PonerMensaje( mensaje ); }
private:
A* a;
void PonerMensaje( const std::string& mensaje ) const
{ std::cout << "B: " << mensaje << std::endl; }
};
void A::EnviarMensaje( const std::string& mensaje ) const
{ if ( b ) b->PonerMensaje( mensaje ); }
int main( )
{
A a;
B b;
a.SetB( &b );
b.SetA( &a );
a.EnviarMensaje( "Hola" ); // Pantalla: B: Hola
b.EnviarMensaje( "Adios" ); // Pantalla: A: Adios
}
Deberías aclarar un poco más los requisitos
creo que te puede servir: https://www.youtube.com/watch?v=vu8VVk2faYY ;-)
Suerte
Gracias ;D ;D