• <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>
            posts - 200, comments - 8, trackbacks - 0, articles - 0
                 問題的由來:
            vector<int> coll;
            .....
            sort(++coll.begin(),coll.end());
                對于sort那句,如果vecotor的底層是用指針實現(通常就是用指針實現),那么編譯無法通過。
               
                其實此次問題該系列上一次文章類似<<c++標準程序庫----p55----為什么需要auto_ptr_ref? (轉)>>,都是臨時對象惹的禍。
               c++不允許任何修改基本類型(包括指針)臨時值的行為,但對于類類型則允許。怎么理解呢?舉個例子:
            #include <iostream>
            using namespace std;
             
             
            class node
            {
             
            public:
                node(int j = 0):i(j){}
                int i;
                void operator++()//這里重定義一個賦值操作符=,為下面的賦值做準備。
                {
                    i++;
                }
            };
             
            node fun()                          
            {
                node temp(1);
                return temp;//這里返回一個類的臨時變量
            }
             
            int* fun2()
            {
                int a =1;
                int* b = &a;  //這里返回存在棧中局部變量的地址是不對的,但只是做實驗! 
                return b;//這里返回一個普通int臨時變量
             
            }
            int main()
            {
                ++fun();   // ok!
                ++fun2(); //這句無法通過編譯 
                system("pause");
             
            }
                上面的例子fun()返回類類型的臨時變量可以被修改,但fun2()返回的指針的臨時變量不能被修改。
                回到開始的例子,因為vector的迭代器底層是用指針實現,所以begin()函數返回的是一個指針類型的臨時變量,如果用++操作去修改,那就違反了c++的設計原則,所以無法編譯通過。做到底還是左值不能被修改!!!
            蜜桃麻豆WWW久久囤产精品| 中文国产成人精品久久不卡| 狠狠色婷婷久久一区二区三区 | 国产精品久久久99| 久久久久人妻一区精品| 久久精品国产亚洲AV久| 久久99精品国产一区二区三区| 久久成人18免费网站| 一本色综合网久久| 精品国产婷婷久久久| 亚洲欧美日韩中文久久| 久久人人爽人人精品视频| 午夜不卡久久精品无码免费| 国产精品九九久久精品女同亚洲欧美日韩综合区 | 欧美亚洲色综久久精品国产| 久久福利青草精品资源站免费| 亚洲国产成人精品无码久久久久久综合| 性做久久久久久久久浪潮| 精品久久久久久久| 思思久久99热只有频精品66| 91精品久久久久久无码| 人妻少妇久久中文字幕| 国产精品久久久久久久久久影院 | 久久久久久亚洲Av无码精品专口| 狠狠色丁香久久综合五月| 久久婷婷色综合一区二区| 91精品无码久久久久久五月天| 99精品久久精品一区二区| 久久综合色之久久综合| 久久99国产一区二区三区| 九九久久99综合一区二区| 国产精品久久久久9999| 久久久久久午夜精品| 久久无码精品一区二区三区| 国产精品激情综合久久| 国产亚洲精久久久久久无码AV| 久久国产乱子伦精品免费强| 久久精品www人人爽人人| 人妻无码中文久久久久专区| 无码国内精品久久人妻蜜桃| 久久偷看各类wc女厕嘘嘘|