Пожалуйста, посмотрите на мой код
class queue
{
void pop(request & req)
{
mtx.lock();
req = requests.front();
requests.pop();
mtx.unlock();
}
private:
typedef std::queue<request> request_container;
request_container requests;
std::mutex mtx;
};
Мне интересно использовать семантику перемещения здесь req = requests.front();
Так как я собираюсь выдвинуть фронтальный объект, он мне больше не нужен. Следовательно, это идеальный случай для перемещения переднего объекта в req
. Как бы я это сделал?