Cześć wszystkim mam problem związany z projektem a dokładniej ze sposobem komunikacji pomiędzy klasami zilustruje to na przykładzie. Mam klasę główną A która zawiera w sobie pewne zmienne, struktury i inna klasę której zleca wykonywanie zadań na tych zmiennych.
Głowna klasa
class A
{
public:
A();
void request();
private:
std::string name;
unsigned id;
std::list< std::string > types;
std::map< std::string, std::list< std::string > > log;
B b; // klasa odpowiedzialna za wykonywanie zadań na składowych
};
void A::request()
{
b.data(); // jak przekazać dane, [ read only ]
}
metoda request z głównej klasy wywołuje metodę klasy B zlecając jej jakieś zadanie i teraz najważniejsze - jaki jest najlepszy sposób na przekazanie klasie B danych klasy A?
Bo wężyk typu
void A::request()
{
b.data( name, id, types, log );
}
nie wygląda dobrze, tym bardziej że danych będzie później więcej. Może jakaś ogólna ( znana obu klasą ) struktura? A może po prostu metody getSomeValue() ?