У меня есть метод, который принимает ссылку на вектор, который содержит указатели на объекты в качестве первого параметра, и ссылку на указатель на объект того же типа, что и второй параметр.В методе я хочу изменить местоположение, на которое ссылается второй аргумент, на объект в векторе.Затем вызывающий метод должен использовать измененный указатель, имея новое местоположение в качестве цели.Однако мои текущие попытки реализовать это терпят неудачу.
Рассматриваемый метод:
void execute(std::vector<CanvasElement*>& elements,CanvasElement*& lastFocused)
Примеры способов, которые я безуспешно пытался установить значение, на которое указывает lastFocused:
lastFocused = elements[0];
*lastFocused = *elements[0];
Уточнение в ответ на комментарий ниже: ошибка в том, что изменения внутри функции не отражаются ни разу за рамками этой функции.
Я могу подтвердить, напечатав адреса, хранящиеся вкаждый указатель во время выполнения приложения указывает, что значение действительно устанавливается в пределах выполнения, но за пределами выполнения оно не изменялось.