• <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 - 19,  comments - 21,  trackbacks - 0

            轉(zhuǎn)載的一篇文章:


            本篇主要寫給對(duì)const語法理解存在誤區(qū)的c++學(xué)習(xí)者,希望所有對(duì)這方面比較模糊的朋友可以閱讀并從中找到一些答案。

            2004-11-19 21:00
            Const 最早想法是用于取代預(yù)處理器#define 這個(gè)宏,從而形成常量的概念。針對(duì)常量const對(duì)象,const指針及指向const的指針,函數(shù)const類型參數(shù),const 函數(shù)返回類型, const類成員,及const成員函數(shù),及對(duì)const最后理解的一些總結(jié)來描述 const。
            ① const對(duì)象和const類型的對(duì)象
            對(duì)于這兩個(gè)概念的描述如下
            1. int const Object; //Object是一個(gè)const量是不可以被修改 Object = 2;Error
            2. const int Object; //Object是 const int型他所存放的內(nèi)容不可以被修改
            對(duì)于1,2這兩種const用于對(duì)象,表述雖然不同但是效果是一樣的。因?yàn)閷?duì)象本身存放著內(nèi)容對(duì)對(duì)象的改變就是對(duì)于對(duì)象內(nèi)容的改變,同樣改變后者也是在改變前者。所以語義上一樣的。
            ② const指針 和 指向const的指針 及兩者結(jié)合
            對(duì)于三個(gè)概念描述如下
            1. int* const p; //指針p是const不能被修改 例如p++; //修改p本身會(huì)Error
            //修改p指向內(nèi)容 *p = 2; //OK
            2. const int* p; //p是指向一個(gè)整形常量的指針指向的內(nèi)容不可以改變 p++;//OK
            // *p = 2; //Error
            3. const int* const p; //指針p本身是不能被修改并且p所有有效的內(nèi)容也不能被
            //修改 *p = 2; Error 和 p++; Error
            ③ const 參數(shù)修飾 和 參數(shù)返回類型的const修飾
            1.const 參數(shù)修飾
            此時(shí)函數(shù)參數(shù)修飾 const的具體用法 ① ②中用法是一樣的
            例如 void Fun( const int I ) { I++;} //Error不能修改常量I
            2.const修飾函數(shù)返回類型用法也是類似于 ①②中,僅僅修飾的對(duì)象變化變成一個(gè)返回對(duì)象
            例如:const int Fun() { static int I; return I;}
            int Res = (Fun())++ //Error不能修改常量返回對(duì)象
            ④ const類成員 和 const 成員函數(shù)
            1. const成員
            類const成員在構(gòu)造期間會(huì)允許被初始化并且在以后不能被改變。我們就可以知道類const成員和一般const 變量是有所不同的,類const成員是對(duì)應(yīng)于每個(gè)對(duì)象而言才有意義。因?yàn)樗跇?gòu)造期被初始化,只有當(dāng)類實(shí)例化后才會(huì)進(jìn)行構(gòu)造。所以類const成員可以這樣描述: 在類的每一次實(shí)例化時(shí)被初始化,在這個(gè)對(duì)象的生存周期中不可改變。
            2. const 成員函數(shù)
            描述: void Class::MemberFun() const {}; //此時(shí)這個(gè)const修飾的this所有類成員變量都不允許在這個(gè)函數(shù)體作用后被修改。這在設(shè)計(jì)上會(huì)帶來一些好處,能防止你意外的處理帶來的問題。
            總結(jié):
            <1> const 常量 一般編譯器不會(huì)分配空間只是維護(hù)一張表。而當(dāng)extern 外部引用這個(gè)常量或者“&”對(duì)這個(gè)常量取地址時(shí),編譯器才會(huì)為其分配地址。Const本身的機(jī)制比較復(fù)雜。
            <2> const 記憶法則 const修飾后面一個(gè)最近的名稱。我曾初學(xué)的時(shí)候被const 修飾搞的糊里糊涂,后來慢慢的總結(jié)我覺得這樣理解最容易的。
            例子: const int I; 此時(shí)const僅僅修飾int 表明 I不是一個(gè)常量但是I的內(nèi)容是常量。因?yàn)閏/c++表達(dá) 對(duì)I的改變就是對(duì)I內(nèi)容的改變所以 I也類似一個(gè)const。大家不妨可以用指針const修飾試試?yán)斫鈺?huì)有幫助的我想。
            <3> 對(duì)于所有非const 類型可以無條件轉(zhuǎn)化為 const類型,但是后者不能自動(dòng)轉(zhuǎn)化為前者除非顯式的強(qiáng)制轉(zhuǎn)化去掉const性。這樣做是有意義的,因?yàn)閏onst類型是非const的一個(gè)子集是一種特殊,由普遍轉(zhuǎn)化為特殊是合理的,就象模板特化,繼承的向上映射都是有意義的。
            <4> 記住所有const修飾的內(nèi)容并不是永遠(yuǎn)不可改變,如果人為的強(qiáng)制轉(zhuǎn)化編譯器是不會(huì)提醒的。因?yàn)樗鼪]有義務(wù)這么做,所以我們對(duì)其轉(zhuǎn)化時(shí)要小心。
            <5> 在const類成員函數(shù)處理時(shí),我們引入了mutable修飾類成員變量,經(jīng)過其修飾的成員變量可以在const類成員函數(shù)中被修改,編譯器是允許的。而其他未被mutable修飾的成員還是按照const規(guī)則不能在const成員函數(shù)中被改變。



            函數(shù)后面加“const”與不加是兩個(gè)不同函數(shù),如:

            #include 

            using namespace std;

            class A
            {
            public:
            A(
            int i, int j){a = i; b = j;}
            void print();
            void print() const;
            private:
            int a, b;
            }
            ;

            void A::print()
            {
            cout 
            << "hello!" << a << b << endl;
            }

            void A::print() const
            {
            cout 
            << "hello const!" << a << b << endl;
            }


            int main()
            {
            A ss(
            3,6);            // 定義A的對(duì)象時(shí),沒有用“const”
            ss.print();
            const dd(20,2);     // 定義A的對(duì)象時(shí),用了“const”
            dd.print();
            }

            posted @ 2005-12-10 20:08 halCode 閱讀(741) | 評(píng)論 (0)編輯 收藏

              昨天去參加筆試,遇到了一題考計(jì)算機(jī)里存放的數(shù)據(jù)都是以原碼、反碼、還是補(bǔ)碼的形式存放的。我還真的很久沒有考慮過原碼補(bǔ)碼的問題了,不過憑他考這個(gè)問題,我可以猜出答案一定是補(bǔ)碼了。雖然答案知道了,但是還真不知道還有這么一說,所以回來在網(wǎng)上搜了一篇這樣的文章,才算是弄清楚是怎么一回事了:


                數(shù)值有正負(fù)之分
            ,計(jì)算機(jī)就用一個(gè)數(shù)的最高位存放符號(hào)(0為正,1為負(fù)).這就是機(jī)器數(shù)的原碼了.假設(shè)機(jī)器能處理的位數(shù)為8.即字長為1byte,原碼能表示數(shù)值的范圍為

            (-127~-0 +0~127)256個(gè).

              有了數(shù)值的表示方法就可以對(duì)數(shù)進(jìn)行算術(shù)運(yùn)算.但是很快就發(fā)現(xiàn)用帶符號(hào)位的原碼進(jìn)行乘除運(yùn)算時(shí)結(jié)果正確,而在加減運(yùn)算的時(shí)候就出現(xiàn)了問題,如下: 假設(shè)字長為8bits

            ( 1 ) 10-  ( 1 )10 =  ( 1 )10 + ( -1 )10 =  ( 0 )10

            (00000001) + (10000001) = (10000010) = ( -2 ) 顯然不正確.

              因?yàn)樵趦蓚€(gè)整數(shù)的加法運(yùn)算中是沒有問題的,于是就發(fā)現(xiàn)問題出現(xiàn)在帶符號(hào)位的負(fù)數(shù)身上,對(duì)除符號(hào)位外的其余各位逐位取反就產(chǎn)生了反碼.反碼的取值空間和原碼相同且一一對(duì)應(yīng). 下面是反碼的減法運(yùn)算:

             ( 1 )10 -  ( 1 ) 10=  ( 1 ) 10+ ( -1 ) 10=  ( 0 )10

             (00000001) + (11111110) =  (11111111) =  ( -0 )  有問題.

            ( 1 )10 -  ( 2)10 =  ( 1 )10 + ( -2 )10 =  ( -1 )10

            (00000001) + (11111101) =  (11111110) =  ( -1 ) 正確

            問題出現(xiàn)在(+0)(-0),在人們的計(jì)算概念中零是沒有正負(fù)之分的.(印度人首先將零作為標(biāo)記并放入運(yùn)算之中,包含有零號(hào)的印度數(shù)學(xué)和十進(jìn)制計(jì)數(shù)對(duì)人類文明的貢獻(xiàn)極大).

            于是就引入了補(bǔ)碼概念. 負(fù)數(shù)的補(bǔ)碼就是對(duì)反碼加一,而正數(shù)不變,正數(shù)的原碼反碼補(bǔ)碼是一樣的.在補(bǔ)碼中用(-128)代替了(-0),所以補(bǔ)碼的表示范圍為:

            (-128~0~127)256個(gè).

            注意:(-128)沒有相對(duì)應(yīng)的原碼和反碼, (-128) = (10000000)  補(bǔ)碼的加減運(yùn)算如下:

            ( 1 ) 10-  ( 1 ) 10=  ( 1 )10 + ( -1 )10 =  ( 0 )10

            (00000001)補(bǔ) + (11111111)補(bǔ) =  (00000000)補(bǔ) = ( 0 ) 正確

            ( 1 ) 10-  ( 2) 10=  ( 1 )10 + ( -2 )10 =  ( -1 )10

            (00000001) 補(bǔ)+ (11111110) 補(bǔ)=  (11111111)補(bǔ) = ( -1 )  正確

               所以補(bǔ)碼的設(shè)計(jì)目的是:

                 ⑴使符號(hào)位能與有效值部分一起參加運(yùn)算,從而簡(jiǎn)化運(yùn)算規(guī)則.

            ⑵使減法運(yùn)算轉(zhuǎn)換為加法運(yùn)算,進(jìn)一步簡(jiǎn)化計(jì)算機(jī)中運(yùn)算器的線路設(shè)計(jì)

              所有這些轉(zhuǎn)換都是在計(jì)算機(jī)的最底層進(jìn)行的,而在我們使用的匯編、C等其他高級(jí)語言中使用的都是原碼。看了上面這些大家應(yīng)該對(duì)原碼、反碼、補(bǔ)碼有了新的認(rèn)識(shí)了吧!


            下面總結(jié)一下:
            1。正數(shù)的原碼反碼補(bǔ)碼都相同,負(fù)數(shù)的反碼是除符號(hào)位為1外,其他位全取反;補(bǔ)碼就是反碼+1
            2。(10000000)補(bǔ) 規(guī)定為-128
            3。計(jì)算機(jī)中的數(shù)據(jù)是以補(bǔ)碼形式存儲(chǔ)的

            posted @ 2005-12-09 19:32 halCode 閱讀(7066) | 評(píng)論 (2)編輯 收藏
              來上海近一個(gè)月了,幾乎每天兩點(diǎn)一線的來回跑著,現(xiàn)在,工作基本上已經(jīng)做完,下午就買票回學(xué)校了。記得我還沒有來上海時(shí),心里是多么不情愿,不希望在這個(gè)寂寞的季節(jié)來到這個(gè)陌生的城市,我真的不愿孤獨(dú),雖然我會(huì)習(xí)慣于孤獨(dú)。

              工作交接完畢后,老板依然努力著說服我留下,我最終還是沒有留下,因?yàn)槲也坏貌换厝フ夜ぷ鳎冶仨毥?jīng)歷這一個(gè)過程,所以我下定決心回去了。但是在分別前的這一兩天里,我發(fā)現(xiàn)我更多的是不舍。不知道我是習(xí)慣了這里一個(gè)人的生活,還是對(duì)這里我們一起吃飯、一起上班的人產(chǎn)生了友情。

             我是個(gè)重情義的人,我會(huì)因?yàn)槔习鍎?chuàng)業(yè)的艱辛而不去跟他計(jì)較報(bào)酬,不會(huì)對(duì)他提供給我的生活條件提出質(zhì)疑,當(dāng)然這些也不是特別的差。一個(gè)老同學(xué)跟我說:別指望在公司里跟老板產(chǎn)生什么真正的友情;還有人說:老板始終是會(huì)以自己公司的利益著想的。這些話的確有道理,即使老板真的把你當(dāng)朋友,但是他經(jīng)營著這個(gè)公司,他所有的生活和工作就是為了這個(gè)公司,所以他對(duì)友情的引導(dǎo)也不會(huì)脫離他公司的利益。我不認(rèn)為這有多么自私,甚至不能用“自私”這個(gè)詞來形容,發(fā)而我覺得,也許大多數(shù)人對(duì)友情的期望過于理想了,即使也許我就是其中之一。

              下午就要走了,其實(shí)并不太想走,但也不意味著想留。整個(gè)人現(xiàn)在是矛盾的,對(duì)于以后的人生,越來越覺得壓力太大。我以前都喜歡走一步算一步,這一次我很想從這種模式中擺脫出來,但是發(fā)現(xiàn)我仍沒有實(shí)現(xiàn)。

              不管怎樣,票是買好了,火車是一定會(huì)開的。人能像火車一樣嗎?從一個(gè)起點(diǎn),一直開到預(yù)定的終點(diǎn)!
            posted @ 2005-12-04 11:04 halCode 閱讀(281) | 評(píng)論 (0)編輯 收藏
            int型在16位、8位機(jī)上默認(rèn)的是short int型,占2個(gè)字節(jié),所以51單片機(jī)開發(fā)上的int類型都是2字節(jié)
                    在32位機(jī)上默認(rèn)的是long int型,占4個(gè)字節(jié),所以一般PC上int類型都是4字節(jié)

            指針類型所占空間不會(huì)因?yàn)樗缸兞款愋偷牟煌煌?6位8位機(jī)上都是2字節(jié);在32位機(jī)上都是4字節(jié),如char *a、int *b, sizeof(a)、sizeof(b)全部都等于4

            signed char 類型的取值范圍是 -128~127
            posted @ 2005-11-26 10:33 halCode 閱讀(351) | 評(píng)論 (0)編輯 收藏
            從來沒有獨(dú)立做過ODBC數(shù)據(jù)庫的程序,今天才發(fā)現(xiàn)原來自己動(dòng)起手來是那么得蹣跚,呵呵。看了《Visual C++中為普通程序添加ODBC應(yīng)用》后收獲不小,現(xiàn)把這些記錄下來,以便日后再忘記的話可以查閱^_^#

            1。給程序加入ODBC數(shù)據(jù)庫的支持需要用到兩個(gè)類:CDatabase和CRecordset,主要是后面一個(gè);
            2。一般步驟為:
            (1) 創(chuàng)建一個(gè)繼承于CRecordset的類CMyRS,系統(tǒng)會(huì)自動(dòng)提示你選擇數(shù)據(jù)源,并會(huì)自動(dòng)關(guān)聯(lián)數(shù)據(jù)表中各項(xiàng)屬性
            (2)在需要查詢數(shù)據(jù)庫的地方先construct一個(gè)CMyRS類的實(shí)例myRS,然后調(diào)用myRS.Open()打開記錄集
            (3)移動(dòng)數(shù)據(jù)集指針到需要的地方,從CMyRS中系統(tǒng)自動(dòng)關(guān)聯(lián)好的數(shù)據(jù)表各項(xiàng)屬性的變量中讀取相應(yīng)的值
            3。需要注意的是:
            (1)調(diào)用myRS.Open()前一定要先construct CMyRS類的對(duì)象,構(gòu)造的時(shí)候可以事先創(chuàng)建一個(gè)CDatabase類的對(duì)象,然后將該對(duì)象的指針傳給構(gòu)CMyRS的造函數(shù),如:CMyRs myRS(&db); 如果為空的話,當(dāng)調(diào)用myRS.Open()時(shí),系統(tǒng)會(huì)自動(dòng)為myRS構(gòu)造一個(gè)CDatabase的對(duì)象,并且調(diào)用CMyRS類的Default SQL 和CONNECT字符串來連接數(shù)據(jù)源。所以不用擔(dān)心沒有連接數(shù)據(jù)庫數(shù)據(jù)源。
            (2)如果事先創(chuàng)建了一個(gè)CDatabase的對(duì)象db,則可以先用自己的conn連接字和sql連接字Open它,然后傳給CMyRS的構(gòu)造函數(shù),構(gòu)造的myRS再不用任何參數(shù)Open()就可以了

            可能有些地方理解的還是不對(duì),希望隨著以后多接觸再來修改!
            posted @ 2005-11-24 16:47 halCode 閱讀(456) | 評(píng)論 (1)編輯 收藏
            qt對(duì)國際化有很好的支持。但默認(rèn)的是unicode編碼。中文系統(tǒng)下默認(rèn)的并非unicode,
            而是比如gbk或gb2312。所以在進(jìn)行const char*參數(shù)傳遞和顯示時(shí)必須特別注意。
            比如在默認(rèn)情況下
            QMessageBox::information(this, "Test", "這是一個(gè)測(cè)試");
            中文字符無法正確顯式
            又如
            bool connect(const char * connectString);
            你如果輸入
            QString str("一個(gè)測(cè)試");
            connect((const char*)str);
            默認(rèn)是調(diào)用QString.latin1()方法,是直接從Unicode的QString返回latin-1字符表示
            集。在中文系統(tǒng)下有時(shí)不是你想要的。
            解決方案:在main.cpp里增加
            QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale());
            這時(shí)涉及到QString/QCString到const char*的轉(zhuǎn)換將使用本地的編碼集。
            類似的還有setCodecForTr()方法。

            NOTE: 這跟qt使用unicode進(jìn)行內(nèi)部通訊、顯示并不沖突。當(dāng)顯示一個(gè)const char*時(shí),
            qt會(huì)將const char*再行轉(zhuǎn)成unicode。


            另一種麻煩點(diǎn)的方法:

            在寫QT程序的時(shí)候,怎樣使用中文?QT內(nèi)建了國際化支持,可以使用國際化支持來實(shí)現(xiàn)。但,比較復(fù)煩瑣,那怎么簡(jiǎn)單地使用中文呢?
            QT 的QString內(nèi)部是使用Unicode編碼的,在寫源碼的時(shí)候,可以使用本地的GB2312/GBK/GB18030,或者UTF8編碼。如果是使用前者的話,那可以使用QString::fromLocal8Bit("本地中文字符串")來得到想要的結(jié)果。如果是使用后者的話,可以使用 QString::fromUtf8("UTF8編碼格式的中文字符串")來得到想要的結(jié)果。
            posted @ 2005-11-23 17:54 halCode 閱讀(5291) | 評(píng)論 (0)編輯 收藏

            1. QT和VC目前最大的不同就是消息的管理
                VC的不同對(duì)象之間發(fā)送消息是對(duì)象A發(fā)送一個(gè)消息給對(duì)象B就不管了,至于B對(duì)于此消息該什么響應(yīng)函數(shù)來處理,由對(duì)象B自己定義的消息處理函數(shù)來響應(yīng);
                而QT中,必須有一個(gè)平臺(tái)來管理A-->B這個(gè)過程,它需要知道A發(fā)生了什么消息(signals),傳給B后,還要通知B用什么消息處理函數(shù)(slots)來處理。

            2. 在有自定義消息處理的類中,必須用這樣的結(jié)構(gòu)
               

            Q_OBJECT  //這種signal-slot結(jié)構(gòu)必須使用的宏

            public slots:

            signals:

            3. 當(dāng)一個(gè).h文件中申明一個(gè)類的變量,而這個(gè)類已經(jīng)在其他文件中定義好了時(shí),可以只把這個(gè)類的頭文件只包含在該.h文件對(duì)應(yīng)的.cpp文件中,而在該.h文件中只需要用一句class ClassName再申明一次就可以了,這樣可以提高編譯速度

            4. 在頭文件中可以用下列一組宏來防止該頭文件被包含多次:(具體用法還要再查查)
             

            #ifndef LCDRANGE_H
            #define LCDRANGE_H
                .       
            //頭文件內(nèi)容開始
            #endif
            posted @ 2005-11-21 15:44 halCode 閱讀(538) | 評(píng)論 (0)編輯 收藏
            #include <QApplication>
            #include 
            <QFont>
            #include 
            <QPushButton>
            #include 
            <QWidget>

            class QMyWidget : public QWidget
            {
            public:
                QMyWidget(QWidget 
            *parent = NULL);
            }
            ;

            QMyWidget::QMyWidget(QWidget 
            *parent) 
                : QWidget(parent)
            {
                setFixedSize(
            200200);
                QPushButton  
            *quit = new QPushButton("Quit"this);
                quit
            ->setGeometry(104018040);
                quit
            ->setFont(QFont("宋體"18, QFont::Bold));
            }
                

            int main(int argc, char *argv[])
            {
                QApplication app(argc, argv);

                   QMyWidget myWidget;

                myWidget.show();
                
            return app.exec();
            }

            注意:
            1。定義一個(gè)類時(shí)用class關(guān)鍵字,定義完后不要忘記這時(shí)一個(gè)語句,需要用分號(hào)結(jié)束。
            2。Qt成員函數(shù)的變量命名規(guī)則是小寫開頭、大寫間隔,與VC中的不一樣。
            3。好久沒有用C++發(fā)現(xiàn)好多語法都生疏了,唉,不行了,要趕緊撿起來, ^_^#!
            posted @ 2005-11-17 14:24 halCode 閱讀(791) | 評(píng)論 (1)編輯 收藏

            明天
                  就像是
                         盒子里的
                   巧克力
            糖!
                  什么滋味,充滿想像!

                第一次聽4INLOVE的《一千零一個(gè)愿望》就被這優(yōu)美的旋律吸引了,幾位純真可愛的小女生將我?guī)У搅丝鞓返耐辏屛仪椴蛔越麩o邊地幻想起童年的未來。想一想,自己都忍不住想笑了!

               今天,突然看到了里面的這句歌詞,突然有種悸動(dòng)的感覺,我的明天,到底在哪里?
             
               我猜這句歌詞來自于經(jīng)典電影《阿甘正傳》中阿甘的那句經(jīng)典對(duì)白:Mom said, life is like a box of chocolates, you never know what you'll gonna get! 很可惜,我沒有看過這部電影,只是聽過這句話的解釋,所以,我并不能真正知道我需要學(xué)習(xí)阿甘怎樣的精神。有時(shí)候,我就覺得我跟我所想象的阿甘有90%的相似:老天不公,只有10%的不同:我沒有他那種勇敢和執(zhí)著。我也常常抱怨我所不能改變的現(xiàn)實(shí),我也常常告訴自己要努力去改變我能改變的事實(shí),但是到頭來,我仍沒有找到我所希望的我,其實(shí)我要求不高,真的;可是也許我努力的也不夠,可能也是真的!

            我的明天在哪里,我的明天是什么滋味?我不可避免的走到這一步,可是我卻還沒有做好拆開巧克力盒子的準(zhǔn)備!所以,我很害怕!不僅僅害怕我的巧克力不知道是什么滋味,更害怕我仍然不敢拆開巧克力盒子。

            我真的該準(zhǔn)備了,我必須面對(duì),不要害怕拆開里面的巧克力。我有我的愿望,我有我的明天,我不愿意再停留在昨天了!!

            posted @ 2005-11-13 16:02 halCode 閱讀(495) | 評(píng)論 (0)編輯 收藏
            僅列出標(biāo)題
            共2頁: 1 2 

            <2025年8月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            常用鏈接

            留言簿(7)

            隨筆分類

            隨筆檔案

            文章分類

            文章檔案

            相冊(cè)

            編程資源

            不務(wù)正業(yè)

            找工作

            搜索

            •  

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            久久本道综合久久伊人| 久久AV高潮AV无码AV| 69SEX久久精品国产麻豆| 久久国产免费观看精品3| 国内精品久久久久影院日本| segui久久国产精品| 久久夜色撩人精品国产小说| 奇米综合四色77777久久| 国产免费久久精品丫丫| 亚洲国产精品无码久久久不卡| 国产成人精品久久免费动漫 | 久久精品国产只有精品66| 久久国产AVJUST麻豆| 国产A级毛片久久久精品毛片| 久久久亚洲裙底偷窥综合| 国内精品久久久久久久亚洲| 久久综合精品国产二区无码| 亚洲国产成人乱码精品女人久久久不卡| 亚洲国产精品成人久久| 久久亚洲国产成人精品无码区| 久久99国产精一区二区三区| 亚洲精品无码专区久久久| 人人狠狠综合久久亚洲| 成人a毛片久久免费播放| 69久久夜色精品国产69| 狠狠色丁香久久婷婷综合五月| 久久婷婷五月综合97色直播| 无码人妻少妇久久中文字幕蜜桃| 久久久久国产一级毛片高清版| 婷婷久久久亚洲欧洲日产国码AV| 午夜精品久久久久久| 久久久久国产精品麻豆AR影院| 美女写真久久影院| 国产精品久久久久9999| 99久久精品国内| 久久精品国产亚洲综合色| 久久国产精品-久久精品| 国产精品久久久久久久 | 94久久国产乱子伦精品免费| 久久综合狠狠综合久久激情 | 亚洲国产另类久久久精品小说|