• <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)  編輯 收藏 引用
            国产精品伦理久久久久久| 日韩精品久久久久久久电影| 国产真实乱对白精彩久久| 精品熟女少妇a∨免费久久| 亚洲国产一成人久久精品| 欧美大香线蕉线伊人久久| 欧美一区二区精品久久| 色婷婷狠狠久久综合五月| 国产精品免费看久久久| 国产精品99久久精品爆乳| 一级做a爰片久久毛片毛片| 久久精品九九亚洲精品天堂| 中文成人无码精品久久久不卡 | 久久精品a亚洲国产v高清不卡| 97精品伊人久久久大香线蕉| 久久精品国产99久久久古代| 久久996热精品xxxx| 热re99久久6国产精品免费| 99久久精品免费看国产一区二区三区| 精品国产日韩久久亚洲| A级毛片无码久久精品免费| 伊人久久久AV老熟妇色| 久久伊人五月丁香狠狠色| 91精品国产色综久久| 日韩精品久久无码中文字幕| 香蕉久久影院| 看全色黄大色大片免费久久久| 精品无码久久久久久久动漫| 久久久久久久97| 18岁日韩内射颜射午夜久久成人| 久久黄色视频| 久久福利资源国产精品999| 国产亚洲成人久久| 亚洲一区中文字幕久久| 久久久久久夜精品精品免费啦| 久久只有这精品99| 久久伊人五月丁香狠狠色| 久久精品成人欧美大片| 精品久久人人爽天天玩人人妻| 亚洲一区精品伊人久久伊人| 久久亚洲国产成人影院|