Я пишу пули на C ++.Я не очень опытен в c ++.
Для моей системы маркеров я хочу иметь класс диспетчера маркеров, который обновляет и рисует все маркеры.У меня также есть класс с именем «Пуля», это хорошо, пуля.
class Bullet {
public:
Bullet();
sf::Sprite bullet_sprite;
sf::Vector2f movement_vector;
sf::Vector2f destination_pos;
float speed;
};
class BulletManager : public Entity {
public:
virtual void draw(sf::RenderWindow& window);
virtual void update(sf::RenderWindow& window);
std::vector<Bullet*> bullets;
};
Я храню каждую пулю в векторе.В функциях рисования и обновления я пробегаю этот вектор и выполняю необходимые операции с каждой маркером.
У меня возникают трудности с добавлением маркеров к вектору из моего класса player .Я пытаюсь передать ссылку на новую пулю следующим образом:
bullet_manager.bullets.push_back(&bullet);
Однако размер вектора bullets всегда остается равным нулю.
Какя могу добавить новые объекты маркера к этому вектору из класса проигрывателя?
Кроме того, у меня это есть в классе проигрывателя, так как он является частью функции обработки ввода игрока.