Позволит ли сохранение ссылки на спрайт в моей структуре Object позволить мне достичь исходного спрайта, а не просто копии при вызове refle ()?
Ссылки должны быть инициализированы во время создания, и они остаются привязанными к объекту типа, к которому они относятся, так что Сохранение ссылки на sprite
всегда будет указывать на один и тот же объект sprite
, любая попытка сделать это псевдоним к чему-то другому приведет к ошибке.
Почему структура "Объект" подчеркнута красным, говоря: Error: implicitly generated constructor for class "OnScreenCheck::Object" cannot initialize.
Вам необходимо предоставить конструктор для OnScreenCheck
, который будет соответствующим образом инициализировать Object
элемент, особенно ссылочный элемент для sprite
. Ошибка, в частности, потому что ссылки ДОЛЖНЫ быть инициализированы во время создания.
В конструкторе я создаю экземпляр объекта и передаю его в вектор объектов. Я бы подумал, что, поскольку я передаю его вектору, вектор сделал бы его копию и сохранил, но мне также интересно, будет ли экземпляр уничтожен после того, как Конструкторы закончили, что-то напортачило. Будет ли это работать?
Вектор сохранит копию объекта и не будет уничтожен, если вы явно не попросите вектор сделать это с помощью векторных функций, если, конечно, ваш объект не имеет несколько типов указателей.