Witam,
Mam mniej więcej (w dużym uproszczeniu) taki kod :
class A
{
public:
A(std::string s) {text = s};
~A();
private:
std::string text;
}
class B
{
public:
B();
~B()
private:
A x;
}
Jak mogę zainicjalizować zmienną x w klasie B ? Próbowałem w konstruktorze B wywołać x(std::string) - błąd, x {std::string} - błąd. Jedyne co mi przyszło do głowy i rzeczywiście działa to dodanie metody
void A::set_val(std::string s) {text = s}
,ale zastanawiam się czy to jest poprawne(jedyne?) rozwiązanie? Wiem oczywiście że mogę tą zmienna zamienić na wskaźnik i zainicjować
x = new A(std::string)
ale staram się takiego rozwiązania uniknąć.
Prośba o pomoc.