通过阅读源码可知,该单向链表不像list双向链表那样有专门的前导节点。即list._Mypair._Myval2._head._next才指向第一个有效数据节点。而 forward_list ._Mypair._Myval2._head 已经指向了有效数据节点。原因就在于复杂巧妙的类型转换。如下图的构造函数里:
对箭头所指的注释进行展开,如下
这里的源代码里也显示了,c++类型转换的强大。这还是俺学习课本以来,第一次遇到如此强大的类型转换应用。特单独强调明确一下。谢谢
(2) 数据结构
c++ ,vs2019, cpp20规范之 forward_list 源码分析
于 2023-07-31 02:04:55 首次发布