У меня есть код, который выглядит так:
class T {};
class container {
const T &first, T &second;
container(const T&first, const T & second);
};
class adapter : T {};
container(adapter(), adapter());
Я думал, что время жизни постоянной ссылки будет временем жизни контейнера. Однако, в противном случае, объект-адаптер разрушается после создания контейнера, оставляя оборванную ссылку.
Каково правильное время жизни?
- это область стека временного объекта адаптера - область содержимого объекта контейнера или конструктора контейнера?
как правильно реализовать привязку временного объекта к ссылке на класс?
Спасибо