尽管实现我用以下结构的FIFO:FIFO实现
struct Node
{
T info_;
Node* link_;
Node(T info, Node* link=0): info_(info), link_(link)
{}
};
我认为这是一个众所周知的伎俩很多STL容器(例如用于列表)。这是一个很好的做法吗?当你说Node有一个指针类型的成员时,它对编译器意味着什么?这是一种无限循环吗?
最后,如果这是一个不好的做法,我该如何实现更好的FIFO。
编辑:人,这是所有关于实现。我对STL库足够熟悉,并且知道来自多个库的大量容器。只是我想与能够提供良好实施或良好建议的人讨论。
这是关于实施的。我知道在哪里找到一个好的容器;)。 – Narek 2010-06-13 19:26:44
@Narek:我觉得应该是这样,但没有时间写更多:)我同意其他评论 - 你的实现没有任何问题,但使用'deque'会更好的性能。 – Stephen 2010-06-13 23:21:56