• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            The Coder

            I am a humble coder.

              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              4 隨筆 :: 4 文章 :: 9 評論 :: 0 Trackbacks

            下面這段引文可對左值、右值加深理解。

            參考文獻:《ANSI/ISO C++ Professional Programmer's Handbook》

            lvalues and rvalues
            An object is a contiguous region of storage. An lvalue is an expression that refers to such an object. The original
            definition of lvalue referred to an object that can appear on the left-hand side of an assignment. However, const
            objects are lvalues that cannot be used in the left-hand side of an assignment. Similarly, an expression that can appear
            in the right-hand side of an expression (but not in the left-hand side of an expression) is an rvalue. For example

            #include? < string >
            using ? namespace ?std;
            int & ?f();
            void ?func()
            {
            ????
            int ?n;
            ????
            char ?buf[ 3 ];
            ????n?
            = ? 5 ;? // ?n?is?an?lvalue;?5?is?an?rvalue
            ????buf[ 0 ]? = ? ' a ' ;? // ?buf[0]?is?an?lvalue,?'a'?is?an?rvalue
            ???? string ?s1? = ? " a " ,?s2? = ? " b " ,?s3? = ?? " c " ;? // ?"a",?"b",?"c"?are?rvalues
            ????s1? = ? // ?lvalue
            ????s2? + s3;? // s2?and?s3?are?lvalues?that?are??implicitly?converted?to?rvalues
            ????s1? = ? // lvalue
            ???? string ( " z " );? // temporaries?are?rvalues
            ???? int ? * ?p? = ? new ? int ;? // p?is?an?lvalue;?'new?int'?is?an?rvalue
            ????f()? = ? 0 ;? // a?function?call?that?returns?a?reference?is?an?lvalue
            ?????s1.size();? // otherwise,?a?function?call?is?an?rvalue?expression
            }

            An lvalue can appear in a context that requires an rvalue; in this case, the lvalue is implicitly converted to an rvalue.
            An rvalue cannot be converted to an lvalue. Therefore, it is possible to use every lvalue expression in the example as
            an rvalue, but not vice versa.
            posted on 2006-06-02 12:03 TH 閱讀(543) 評論(0)  編輯 收藏 引用
            久久久久国产视频电影| 久久99国产精一区二区三区| 亚洲综合精品香蕉久久网97 | 国产精品久久久久AV福利动漫| 亚洲国产精品无码久久| 麻豆AV一区二区三区久久 | 久久久久久久精品妇女99| 亚洲精品蜜桃久久久久久| 久久亚洲AV成人无码电影| 久久99中文字幕久久| 亚洲国产精品成人久久蜜臀 | 亚洲精品国产第一综合99久久| 99久久精品国产麻豆| 国产精品一区二区久久精品涩爱| 麻豆AV一区二区三区久久| 久久久久久久久久免免费精品| 亚洲中文字幕无码久久2020| 久久91精品综合国产首页| 97久久精品国产精品青草| 色综合久久中文字幕综合网| 国产精品99久久久久久猫咪| 97久久久久人妻精品专区| 思思久久99热免费精品6| 精品精品国产自在久久高清| 精品伊人久久大线蕉色首页| 久久精品国产福利国产琪琪 | 国产福利电影一区二区三区久久老子无码午夜伦不 | 亚洲狠狠婷婷综合久久蜜芽 | 久久精品人妻一区二区三区| 日产精品久久久一区二区| 久久毛片免费看一区二区三区| 99久久婷婷国产一区二区| 国产V综合V亚洲欧美久久| 人妻精品久久久久中文字幕69 | 久久久久亚洲AV无码专区体验| 亚洲国产天堂久久久久久| 久久婷婷国产麻豆91天堂| 国产精品亚洲美女久久久| 国产成人精品白浆久久69| 久久97精品久久久久久久不卡| 久久综合久久自在自线精品自|