<bdo id='hGHxn'></bdo><ul id='hGHxn'></ul>
  • <legend id='hGHxn'><style id='hGHxn'><dir id='hGHxn'><q id='hGHxn'></q></dir></style></legend>

    <tfoot id='hGHxn'></tfoot>

    1. <i id='hGHxn'><tr id='hGHxn'><dt id='hGHxn'><q id='hGHxn'><span id='hGHxn'><b id='hGHxn'><form id='hGHxn'><ins id='hGHxn'></ins><ul id='hGHxn'></ul><sub id='hGHxn'></sub></form><legend id='hGHxn'></legend><bdo id='hGHxn'><pre id='hGHxn'><center id='hGHxn'></center></pre></bdo></b><th id='hGHxn'></th></span></q></dt></tr></i><div id='hGHxn'><tfoot id='hGHxn'></tfoot><dl id='hGHxn'><fieldset id='hGHxn'></fieldset></dl></div>

      1. <small id='hGHxn'></small><noframes id='hGHxn'>

        C++ 链表行为

        时间:2023-10-18
            <tbody id='CyRRV'></tbody>
        1. <i id='CyRRV'><tr id='CyRRV'><dt id='CyRRV'><q id='CyRRV'><span id='CyRRV'><b id='CyRRV'><form id='CyRRV'><ins id='CyRRV'></ins><ul id='CyRRV'></ul><sub id='CyRRV'></sub></form><legend id='CyRRV'></legend><bdo id='CyRRV'><pre id='CyRRV'><center id='CyRRV'></center></pre></bdo></b><th id='CyRRV'></th></span></q></dt></tr></i><div id='CyRRV'><tfoot id='CyRRV'></tfoot><dl id='CyRRV'><fieldset id='CyRRV'></fieldset></dl></div>

            <bdo id='CyRRV'></bdo><ul id='CyRRV'></ul>

              • <tfoot id='CyRRV'></tfoot>

              • <legend id='CyRRV'><style id='CyRRV'><dir id='CyRRV'><q id='CyRRV'></q></dir></style></legend>

                <small id='CyRRV'></small><noframes id='CyRRV'>

                  本文介绍了C++ 链表行为的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  我有一些 C 代码,其中有两个链表(比如 A 和 B),A 被插入到 B 的特定位置,而 A 仍然有元素.

                  I have some C code, where in there are two linked lists(say A and B) and A is inserted at a particular position into B and A still has elements.

                  如何使用 C++ STL 有效地模拟相同的行为?如果我尝试拼接,它会使第二个为空.

                  How do I simulate the same behavior effectively using the C++ STL? If I try splice, it makes the second one empty.

                  谢谢,古库尔.

                  推荐答案

                  您需要复制元素.考虑这样的事情:

                  You need to copy the elements. Consider something like this:

                  std::copy(a.begin(), a.end(), std::inserter(b, b_iterator));
                  

                  如果您希望两个列表共享相同的节点,std::list 根本不支持这一点(STL 容器始终具有独占所有权).您可以通过在列表中存储指针或使用 boost::ptr_list 来避免重复元素,它在内部存储指针但提供了更好的 API.

                  If you want the same nodes shared by two lists, this is simply not supported by std::list (STL containers always have exclusive ownership). You can avoid duplicating the elements by storing pointers in the list, or by using boost::ptr_list, which internally stores pointers but offers a nicer API.

                  这篇关于C++ 链表行为的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  上一篇:链表中的搜索函数 - C++ 下一篇:C++中的列表析构函数

                  相关文章

                  <small id='JlPjV'></small><noframes id='JlPjV'>

                • <i id='JlPjV'><tr id='JlPjV'><dt id='JlPjV'><q id='JlPjV'><span id='JlPjV'><b id='JlPjV'><form id='JlPjV'><ins id='JlPjV'></ins><ul id='JlPjV'></ul><sub id='JlPjV'></sub></form><legend id='JlPjV'></legend><bdo id='JlPjV'><pre id='JlPjV'><center id='JlPjV'></center></pre></bdo></b><th id='JlPjV'></th></span></q></dt></tr></i><div id='JlPjV'><tfoot id='JlPjV'></tfoot><dl id='JlPjV'><fieldset id='JlPjV'></fieldset></dl></div>

                        <bdo id='JlPjV'></bdo><ul id='JlPjV'></ul>

                      <tfoot id='JlPjV'></tfoot>
                    1. <legend id='JlPjV'><style id='JlPjV'><dir id='JlPjV'><q id='JlPjV'></q></dir></style></legend>