std :: forward_list是否支持手动重新指向?

汤玛士

以下是一个琐碎的问题,可能以前曾有人问过,但是我无法通过搜索找到答案。

我想做的是使用std :: forward_list在C ++中实现“破解编码面试”中的一些练习。以我的理解,链接列表元素包含a)数据和b)指向下一个元素的指针。一些解决方案需要将“下一个”指针重新指向另一个元素,例如(伪代码)

node1.next = node1.next.next.next; // Effectively deletes 2 elements

但是,我在forward_list文档中找不到任何方法来执行此操作我是否缺少某些东西,还是根本不可能?

如果有人可以指出正确的问题,我将非常高兴,谢谢!

谢尔盖

您无法在中进行手动重新指向std::forward_list,因为它隐藏了您的所有机制。这就是它被创建的原因!

相反,您需要对其执行业务操作。例如,要从列表中删除元素,您需要调用erase_after()-它甚至具有重载功能,可以一次性删除两个相应的节点。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么std :: forward_list ::: remove和std :: erase <std :: forward_list>具有不同的值类型?

来自分类Dev

是否在空std :: forward_list中定义了before_begin()之后的元素?

来自分类Dev

std :: forward_list和序列概念要求

来自分类Dev

Gnome的gslist比std :: forward_list有什么优势?

来自分类Dev

O(1)之后std :: forward_list的emplace_如何?

来自分类Dev

如何删除存储在std :: forward_list中的动态元素

来自分类Dev

使用Groupby Pandas DataFrame手动计算STD

来自分类Dev

使用Groupby Pandas DataFrame手动计算STD

来自分类Dev

xlc是否支持forward_list

来自分类Dev

为什么return {};不适用于std :: forward_list?

来自分类Dev

您可以在遍历std :: forward_list时将其删除吗?

来自分类Dev

为什么`return {};`不适用于`std :: forward_list`?

来自分类Dev

C ++ STL-为什么std :: forward_list没有size()方法?

来自分类Dev

std :: move对比std :: forward

来自分类Dev

std :: forward与std :: move的用法

来自分类Dev

std :: unique_ptr的自定义删除程序是否是手动调用析构函数的有效位置?

来自分类Dev

std :: complex的运算符*返回的答案不同于复数乘法的手动公式

来自分类Dev

std :: map的查找找不到,但是使用手动扫描的map中的元素

来自分类Dev

std :: forward <Args>还是std :: forward <Args ...>?

来自分类Dev

参数std :: unique_ptr <T> &&的std :: move或std :: forward

来自分类Dev

在std :: forward中使用std :: decay

来自分类Dev

std :: forward_list.push_front(std :: thread)无法编译

来自分类Dev

std :: forward_list.push_front(std :: thread)无法编译

来自分类Dev

std :: forward的实现

来自分类Dev

std :: vector或std :: list for std :: unordered_map存储桶?

来自分类Dev

std :: vector :: insert vs std :: list :: operator []

来自分类Dev

Cannot deserialize std::list<std::string>

来自分类Dev

C ++-std :: initializer_list与std :: span

来自分类Dev

std :: inner_product比手动速度快4倍,但没有使用SIMD吗?

Related 相关文章

  1. 1

    为什么std :: forward_list ::: remove和std :: erase <std :: forward_list>具有不同的值类型?

  2. 2

    是否在空std :: forward_list中定义了before_begin()之后的元素?

  3. 3

    std :: forward_list和序列概念要求

  4. 4

    Gnome的gslist比std :: forward_list有什么优势?

  5. 5

    O(1)之后std :: forward_list的emplace_如何?

  6. 6

    如何删除存储在std :: forward_list中的动态元素

  7. 7

    使用Groupby Pandas DataFrame手动计算STD

  8. 8

    使用Groupby Pandas DataFrame手动计算STD

  9. 9

    xlc是否支持forward_list

  10. 10

    为什么return {};不适用于std :: forward_list?

  11. 11

    您可以在遍历std :: forward_list时将其删除吗?

  12. 12

    为什么`return {};`不适用于`std :: forward_list`?

  13. 13

    C ++ STL-为什么std :: forward_list没有size()方法?

  14. 14

    std :: move对比std :: forward

  15. 15

    std :: forward与std :: move的用法

  16. 16

    std :: unique_ptr的自定义删除程序是否是手动调用析构函数的有效位置?

  17. 17

    std :: complex的运算符*返回的答案不同于复数乘法的手动公式

  18. 18

    std :: map的查找找不到,但是使用手动扫描的map中的元素

  19. 19

    std :: forward <Args>还是std :: forward <Args ...>?

  20. 20

    参数std :: unique_ptr <T> &&的std :: move或std :: forward

  21. 21

    在std :: forward中使用std :: decay

  22. 22

    std :: forward_list.push_front(std :: thread)无法编译

  23. 23

    std :: forward_list.push_front(std :: thread)无法编译

  24. 24

    std :: forward的实现

  25. 25

    std :: vector或std :: list for std :: unordered_map存储桶?

  26. 26

    std :: vector :: insert vs std :: list :: operator []

  27. 27

    Cannot deserialize std::list<std::string>

  28. 28

    C ++-std :: initializer_list与std :: span

  29. 29

    std :: inner_product比手动速度快4倍,但没有使用SIMD吗?

热门标签

归档