我有一个“指针”,它不断递增,我需要最后返回指针的“头部”。我使用“pointer [0]”或者使用另一个名为“head”的变量并初始化它并在最后返回时陷入两难境地。前者我认为代码看起来很脏,后来花费很少的内存。任何干净的建议?
答案 0 :(得分:2)
您将始终需要两个变量:
Foo *head = getSomeList();
Foo *tail = head;
while (tail->isValid())
++tail;
// You have head and tail here
你不能真正实现它,因为tail[0] != head
(除非列表是空的)。
显示代码并告诉我们您尝试实现的目标可能会带来更好的答案。