<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          C++核心準(zhǔn)則C.150:unique_ptr管理的對象要用make_unique()?構(gòu)建

          3e8f06a039698337728628723b90bfab.webp

          C.150: Use?make_unique()?to construct objects owned by unique_ptrs

          C.150:unique_ptr管理的對象要用make_unique()構(gòu)建


          Reason(原因)

          make_unique?gives a more concise statement of the construction. It also ensures exception safety in complex expressions.

          make_unique提供了更簡潔的構(gòu)建語句。在復(fù)雜的表達(dá)式中,它也可以保證異常安全。


          Example(示例)
          unique_ptr p {new Foo{7}};    // OK: but repetitive

          auto q = make_unique(7); // Better: no repetition of Foo

          // Not exception-safe: the compiler may interleave the computations of //arguments as follows:
          //
          // 1. allocate memory for Foo,
          // 2. construct Foo,
          // 3. call bar,
          // 4. construct unique_ptr.
          //
          // If bar throws, Foo will not be destroyed, and the memory-allocated //for it will leak.
          f(unique_ptr(new Foo()), bar());

          // Exception-safe: calls to functions are never interleaved.
          f(make_unique(), bar());

          Enforcement(實(shí)施建議)
          • Flag the repetitive usage of template specialization list?

          • 提示重復(fù)使用模板初始化列表的代碼。

          • Flag variables declared to be?unique_ptr

          • 提示使用unique_ptr定義變量的情況。


          原文鏈接:

          https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#c150-use-make_unique-to-construct-objects-owned-by-unique_ptrs




          覺得本文有幫助?請分享給更多人。

          關(guān)注【面向?qū)ο笏伎肌枯p松學(xué)習(xí)每一天!

          面向?qū)ο箝_發(fā),面向?qū)ο笏伎迹?/span>


          瀏覽 16
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  丁香五月婷婷色色 | 成人依人网 | 亚洲精品在线中文字幕 | 台湾高清无码视频在线观看 | 毛片毛片毛片毛片 |