SFML и C++ Уроки \ Разработка игр › Форумы › SFML Graphics › Контейнеры в классе › Ответ в теме: Контейнеры в классе
ошибка скорее всего в том, что вы не правильно используете передачу окна в функцию и/или не правильно его используете в самой функции.
Когда я делал свою игру, то вот так сделал:
в main.cpp
game->draw(&window);
// передаю ссылку на окно
в Game.cpp
void Game::draw(sf::RenderWindow *window)
{ // отрисовка игры
if( numSpaceShip != 0 )
for(std::vector<SpaceShip*>::iterator it = vecSpaceShip.begin(); it != vecSpaceShip.end(); ++it)
if( (*it)->getIsActivity() == true )
(*it)->draw(window);
}
// передаю эту же ссылку в экземпляр класса КосмическийКорабль
SpaceShip.cpp
void SpaceShip::draw(sf::RenderWindow *window)
{
(*window).draw(sprite);
// а тут получаю окно, и использую метод draw()
}
о векторе можете почитать тут http://cppstudio.com/post/8453/