for (Waiter element : restaurant1.GetWaitersVector())
работает с копией вектора.
Если вы хотите работать с эталоном, используйте
for (auto& element : restaurant1.GetWaitersVector())
// ^^^^^
.
Нокроме того, что упомянуто выше, показ вашего интернированного вектора - плохая идея дизайна.Вам лучше иметь геттер, который выполняет
inline const std::vector<Waiter> &GetWaitersVector() const { return waiters_vector_; }
и, таким образом, заставляет клиентов, обращающихся к нему, использовать определенные функции вашего класса, такие как AddWaiter()
, для его изменения.