<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ## 一.值的分類 ### 傳統分類 1. **左值 lvalue (位置值)** 存儲數據值的內存位置。可以取地址。 2. **右值 rvalue (被讀取的值)** 它的數據值,存儲在某個內存地址中。不可取地址。 注: 1. VC++6.0中, **匿名類類型對象** 為左值。 ### \[11+\][$]新標準分類 + **擁有身份** 可以確定表達式與另一表達式是否有相同的內存位置,或相對內存位置。 >例如 表達式 `5;` 和另一處的表達式 `5;` 是否是相同的內存位置是不確定的。因為表達式結束后,它的生命期就結束了。下一次它被分配在什么內存位置也不確定,也許是上次分配的位置,也許是另外的位置。 >例如 對于一個局部變量(沒有重名的其他域的變量),可以確定其內存位置。 + **可被移動** 可以被用作移動構造函數、移動賦值運算符等的參數。 | 類別|作用域(相對)| 擁有身份| 可取地址| 可移動| 案例| |----|----|----|----|----|----| | `lvalue` 左值|長| √ | √ | × | 變量名,字符串常量,具名右值引用,左值引用 | | `xvalue` 將亡值|短| √ | × | √ | 匿名右值引用 | | `prvalue` 純右值|短| × | × | √ | 字面值常量(除了字符串常量),匿名對象 | | 類別|子類別| 擁有身份| 可取地址| 可移動| 案例| |----|----|----|----|----|----| | `glvalue` 泛左值|將亡值,左值| √ | ? | ? | 變量名,右值引用,左值引用| | `rvalue` 右值|將亡值,純右值| ? | × | √ |字面值常量(除了字符串常量),匿名對象,匿名右值引用 | ![](https://img.kancloud.cn/93/b4/93b4ab320e87ea66e3a73779a008bc94_458x230.png) ## [$]二.具名對象、匿名對象與左右值 |類型|具名對象|匿名對象| |----|----|----| |非引用類型|左值|右值(新標準為純右值,但是匿名的字符串是左值)| |左值引用|左值|左值| |右值引用|左值|將亡值| 注: 1. VC++6.0中,匿名類類型對象為左值。 ## \[11+\][$]三.std::move(exp) 1. **用途** 強行將左值轉換為右值引用,這樣創建一個新對象的時候,可以調用移動構造函數,而不是拷貝構造函數,減小內存開銷。 2. **注意** 這意味著除了對原左值賦值或銷毀,程序員不再使用它。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看