c++ ,vs2019, cpp20规范之 forward_list 源码分析

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

你可能感兴趣的:(c++容器类模板的相关源码分析,c++,开发语言)