• <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 閱讀(544) 評論(0)  編輯 收藏 引用
            国产精品欧美久久久天天影视| 美女久久久久久| 91精品婷婷国产综合久久| 国产午夜精品久久久久九九电影 | 97精品伊人久久大香线蕉| 久久久亚洲欧洲日产国码是AV| 国产精品久久波多野结衣| 久久午夜无码鲁丝片秋霞| 国产精品久久久久久影院| 少妇人妻综合久久中文字幕| 91久久精品国产免费直播| 亚洲AV无码久久精品成人| 久久伊人色| segui久久国产精品| 99久久免费国产特黄| 亚洲熟妇无码另类久久久| 亚洲欧洲中文日韩久久AV乱码| 99久久精品免费国产大片| 久久久久久久亚洲Av无码| 精品国产乱码久久久久软件| 四虎影视久久久免费| 中文精品久久久久国产网址| 999久久久无码国产精品| 精品伊人久久大线蕉色首页| 亚洲国产日韩欧美久久| 人妻精品久久久久中文字幕| 精品久久久无码中文字幕| 99久久无码一区人妻| 久久亚洲国产欧洲精品一| 久久精品国产精品国产精品污| 久久99国产综合精品女同| 久久99精品久久久久久hb无码 | 久久久久99精品成人片| 久久精品国产福利国产秒| 国产成人久久精品区一区二区| 久久精品免费一区二区| 午夜精品久久久久久久久| 99精品久久精品一区二区| 亚洲乱亚洲乱淫久久| 久久99精品久久久久久9蜜桃| 久久精品无码免费不卡|