<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>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # 左值的相關運算符 `左值`,是指位于表達式左邊的變量,可以是與操作符直接結合的形成的,如自增,自減;也可以是賦值,位運算。 可以支持操作符有:`-=`,`+=`,`*=`,`%=`,`|=`,`&=`,`^=`,`++`,`--`。 ## 特殊的運算符delete `delete`運算符,用于將某個變量重置為初始值。對于整數,運算符的效果等同于`a = 0`。而對于定長數組,則是把數組中的每個元素置為初始值,變長數組則是將長度置為0。對于結構體,也是類似,是將所有的成員均重置為初始值。 `delete`對于映射類型幾乎無影響,因為鍵可能是任意的,且往往不可知。所以如果你刪除一個結構體,它會遞歸刪除所有非mapping的成員。當然,你是可以單獨刪除映射里的某個鍵,以及這個鍵映射的某個值。 需要強調的是`delete a`的行為更像賦值,為`a`賦予一個新對象。我們來看看下文的示例: ``` pragma solidity ^0.4.0; contract DeleteExample { uint data; uint[] dataArray; function f() { //值傳遞 uint x = data; //刪除x不會影響data delete x; //刪除data,同樣也不會影響x,因為是值傳遞,它存的是一份原值的拷貝。 delete data; //引用賦值 uint[] y = dataArray; //刪除dataArray會影響y,y也將被賦值為初值。 delete dataArray; //下面的操作為報錯,因為刪除是一個賦值操作,不能向引用類型的storage直接賦值從而報錯 //delete y; } } ``` 通過上面的代碼,我們可以看出,對于值類型,是值傳遞,刪除`x`不會影響到`data`,同樣的刪除`data`也不會影響到`x`。因為他們都存了一份原值的拷貝。 而對于復雜類型略有不同,復雜類型在賦值時使用的是引用傳遞。刪除會影響所有相關變量。比如上述代碼中,刪除`dataArray`同樣會影響到`y`。 由于`delete`的行為更像是賦值操作,所以不能在上述代碼中執行`delete y`,因為不能對一個storage的引用賦值。 [http://solidity.readthedocs.io/en/develop/types.html#operators-involving-lvalues](http://solidity.readthedocs.io/en/develop/types.html#operators-involving-lvalues) strorage的引用不能賦值原因,可以看看關于數據位置的這篇文章:[http://me.tryblockchain.org/solidity-data-location.html。](http://me.tryblockchain.org/solidity-data-location.html%E3%80%82)?
                  <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>

                              哎呀哎呀视频在线观看