对不起,如果我重复一个问题,但是我找不到相同的内容。 什么是从标准队列中提取元素的正确操作?我看不到从std ::队列中取出元素的方法
T Pop()
{ T rout;
EnterCriticalSection (pCSection);
rout = Queue.front(); // here the link is returned
Queue.pop(); // here destructor is called
LeaveCriticalSection (pCSection);
return rout; // -->> there everything falls
}
我有一个类T
动态内存管理和拷贝构造函数,与front()
行拷贝构造函数不会自动被调用。
析构函数释放范围末尾处的内存,并且我拥有带垃圾的实体。
如何强制复制构造?
是否'T'为您的实际情况适当的拷贝构造函数? _“也许强制复制构造函数?”_听起来像是个不错的主意。此外_“有一切都落下了”_不是一个很好的描述你的实际问题。 – 2014-11-22 22:00:04
在调用'Queue.front();'顺便说一句之前,你应该检查队列的大小。 – 2014-11-22 22:01:16
如果T是一个指针,那么整个代码就没用了。 – 2014-11-22 22:02:42