В вашем коде есть три проблемы:
1) Пример массива в Game.h - статический массив нулевой длины (поэтому вы не можете добавлять туда символы). Решение: создать константный указатель на массивсимволы
2) Внутри конструктора Game вы создаете НОВЫЙ пример переменной, не влияйте на переменную в Game.h -> ваша переменная в классе просто не обновляет решение: example = "PASS";
3) В func Game :: PrintArray вы печатаете только первого персонажа. Решение: cout << example << endl;
Game.h:
class Game {
private:
const char* example;
public:
Game();
bool PrintArray();
};
Game.cpp:
Game::Game() {
example = "PASS";
}
bool Game::PrintArray() {
cout << example << endl;
return true;
}
Но еще более правильным решением является использование std::string
.Тогда вам не нужно беспокоиться о выделенной / нераспределенной памяти:
Game.h:
class Game {
private:
std::string example;
public:
Game();
bool PrintArray();
};
Game.cpp:
Game::Game() {
example = "PASS";
}
bool Game::PrintArray() {
cout << example << endl;
return true;
}