99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

C++類模板從入門到工程實踐:實例化、特化與常見陷阱

C++類模板從入門到工程實踐:實例化、特化與常見陷阱 學 C 的人幾乎沒有不碰類模板template的。STL 容器、智能指針、標準庫算法隨便拉一個出來都是類模板或函數(shù)模板的產物。但我發(fā)現(xiàn)一個現(xiàn)象很多人能看懂 vector 、unique_ptr 的用法一轉身要自己定義一個類模板就開始手足無措要么把 template 關鍵字到處亂放要么干脆不知道成員函數(shù)該怎么寫在類外面。這篇文章我想把 C 類模板從語法骨架到工程實踐捋一遍重點不是背書而是回答“為什么這樣寫”“為什么我自己寫的時候會編譯失敗”以及“什么樣的代碼風格能讓模板類長期可維護”。無論你是剛學完類和對象、第一次看到 template 的初學者還是寫過一陣子模板卻總是被編譯錯誤折騰的開發(fā)者都值得花十幾分鐘從頭過一遍。1. 類模板要解決的最原始痛點為類型寫同一份實現(xiàn)1.1 沒有模板時代復制粘貼帶來的是長期的維護負債想象一下你要寫一個整數(shù)棧、一個字符串棧、一個浮點數(shù)棧。不用模板最直接的做法是復制三份類改成不同的類型名。類體可能七八十行復制三份之后看起來也還好對吧可問題出在改需求的時候。比如某一天你想給棧加一個clear()方法或者想把底層存儲從std::vector換掉你就得同步修改三份代碼少改一份某條業(yè)務分支就會在運行時崩潰或者行為不一致。再往后添新類型又得復制第四份、第五份。這就是典型的“復制粘貼式開發(fā)”的長期維護負債。短時間內爽后續(xù)每次改動都在還債。類模板的思路本質上很樸素既然這三份類的差別只在于元素類型那我把“類型”這個詞挖掉留一個占位符出來。寫一次邏輯讓編譯器在遇到Stackint、Stackstd::string、Stackdouble的時候分別按你說的類型再去生成對應版本。這個概念就是“用同一份代碼模板描述一類對象”也就是類模板的核心價值。1.2 類模板的思路把“類型”本身變成參數(shù)普通函數(shù)的參數(shù)是變量傳入的是值。類模板的參數(shù)是類型或者稍后會提到的編譯期常量。你可以把模板理解成給編譯器的一張圖紙templatetypename T class Stack { // 凡是元素類型都用 T 占位 };當你寫下Stackint的時候編譯器拿到這張圖紙把里面所有T替換成int生成一套真正可以實例化的類。當你寫下StackMyUser的時候再替換一次生成另一套獨立的類。這跟 C 語言里宏展開的思想有點像但區(qū)別在于模板有嚴格的語法和類型檢查不是無腦文本替換。關鍵詞typename和class在這里可以互換老代碼里更常見寫class新代碼大家逐漸習慣用typename含義完全一致。至于參數(shù)名叫T也不是強制規(guī)定只是慣例你叫ElemType、ValueType都行只要在模板體里保持一致。1.3 順帶澄清類模板和模板類不是同一個名詞初學者問“類模板和模板類有什么區(qū)別”的頻率非常高。簡單說類模板是那個帶templatetypename T的類定義本身它是一種“圖紙”模板類指的是“已經(jīng)指定了具體類型參數(shù)的類”比如Stackint此時可以說是一個模板類實例。這個區(qū)分在口語里經(jīng)?;煊玫珜懳恼隆⒆鲈O計時搞清楚有助于溝通。真正重要的是類模板本身不是一個可用的類型你沒法聲明Stack s;必須給出類型參數(shù)得到實際類型后才能創(chuàng)建對象。2. 一步步寫一個 Stack 從定義到實例化的完整骨架2.1 類內實現(xiàn)版本最直觀的第一版先看一段完整的StackT類內實現(xiàn)。作為示例我直接依賴std::vectorT做底層存儲這樣聚焦在模板語法上而不是數(shù)據(jù)結構細節(jié)。#include vector #include stdexcept templatetypename T class Stack { public: void push(const T value) { data_.push_back(value); } void pop() { if (data_.empty()) { throw std::out_of_range(Stack::pop(): empty stack); } data_.pop_back(); } T top() { if (data_.empty()) { throw std::out_of_range(Stack::top(): empty stack); } return data_.back(); } bool empty() const { return data_.empty(); } size_t size() const { return data_.size(); } private: std::vectorT data_; };注意std::vectorT里的T。當T是int時成員變量就是std::vectorint當T是自定義類型Product時成員變量就是std::vectorProduct。模板參數(shù)一旦傳入編譯器會沿整個類定義把所有出現(xiàn)T的地方都替換掉包括普通函數(shù)參數(shù)、返回值、局部變量和成員變量聲明。使用方式很直接Stackint intStack; intStack.push(1); Stackstd::string strStack; strStack.push(hello);這里有個容易誤解的地方Stackint和Stackstd::string是兩個完全無關的類型它們之間沒有繼承、也沒有隱式轉換關系。你寫一個普通函數(shù)void foo(Stackint)傳Stackstd::string進去編譯器會直接報類型不匹配因為編譯器確實生成了兩套獨立的類。2.2 成員函數(shù)在類外定義時的重復寫法實際項目里為了讓類的接口更清晰、降低編譯期依賴經(jīng)常把聲明和定義分開。普通類在類外定義成員函數(shù)時只需要寫ClassName::functionName。模板類就不一樣每個類外定義的成員函數(shù)都必須重新帶上templatetypename T同時要寫StackT::。templatetypename T void StackT::push(const T value) { data_.push_back(value); } templatetypename T void StackT::pop() { if (data_.empty()) { throw std::out_of_range(Stack::pop(): empty stack); } data_.pop_back(); } templatetypename T T StackT::top() { if (data_.empty()) { throw std::out_of_range(Stack::top(): empty stack); } return data_.back(); }在頭文件里這樣寫的時候templatetypename T這行聲明必須緊跟對應定義。有人會把templatetypename T寫漏或者寫成了templatetypename T但函數(shù)名卻寫Stack而不是StackT編譯器就會報類似“缺少模板實參”的錯。還有一個容易忽略的點普通類可以一個::走天下模板類在嵌套作用域里更要小心比如構造函數(shù)寫在類外templatetypename T StackT::Stack() default;在 C11 之后即便想 default不在類內寫也要把這個聲明放在類里類外才補定義。如果干脆不寫任何構造編譯器生成默認構造你也不需要額外操心。2.3 交給編譯器的“實例化”到底發(fā)生在什么時候很多初學者背下了模板語法卻搞不明白模板代碼什么時候被真正編譯。實際上模板定義里的語法錯誤在編譯器看到templatetypename T class Stack {...}時就會檢查一部分但和類型相關的邏輯錯誤往往要等到你寫出Stackint這樣的實例化表達式之后編譯器才會把T替換成int再全量檢查一遍成員函數(shù)體。這就是為什么有人寫了一個模板類從來沒使用過它編譯通過了一旦真用起來報了一堆錯。真實原因是你沒有實例化它編譯器沒必要去檢查“把T替換為某個類型后函數(shù)體里的所有操作是否合法”。只要T是未知的很多操作沒法提前判定。這個機制既方便又危險方便在于模板代碼可以寫得很通用危險在于如果你只用某一套類型實例化另一條函數(shù)分支可能從來沒被檢查過等線上某個怪異的類型觸發(fā)時才炸。2.4 構造函數(shù)的模板參數(shù)推導C17 帶來的改變在 C17 之前寫Stack這類模板你必須顯式給出類型參數(shù)Stackint s;哪怕構造函數(shù)里已經(jīng)傳了int進去編譯器也不會替你猜。C17 引入了類模板實參推導CTAD一部分場景下可以直接簡寫templatetypename T class AutoStack { public: AutoStack(T seed) : data_{seed} {} private: std::vectorT data_; }; AutoStack s{42}; // C17 推導出 AutoStackint這對減少冗余非常有幫助但推導也不是永遠符合直覺。構造函數(shù)有多個參數(shù)、參數(shù)類型不完全一致、或者有默認構造時推導規(guī)則會變復雜。后面第 6 部分我再單獨展開。3. 非類型參數(shù)、默認參數(shù)和特化類模板不止能傳類型3.1 非類型模板參數(shù)把一個編譯期常量傳給類類型可以作為模板參數(shù)整數(shù)、枚舉、指針等編譯期常量也可以。最常見的就是std::arrayT, N第二個參數(shù)N是std::size_t類型的非類型模板參數(shù)。templatetypename T, size_t Capacity class FixedBuffer { public: T operator[](size_t index) { return data_[index]; } size_t capacity() const { return Capacity; } private: T data_[Capacity]; }; FixedBufferint, 256 buf;寫T data_[Capacity]意味著Capacity必須是一個編譯期已知的常量表達式不能是變量也不能是函數(shù)返回的運行時值。聯(lián)系到上一節(jié)的實例化機制FixedBufferint, 256和FixedBufferint, 512也是兩個不同的類型因為生成的內部數(shù)組大小不同。非類型模板參數(shù)的類型限制在不同標準版本里有變化。早期只允許整型、枚舉、指針和左值引用到了 C20結構體類型的字面量也可以作為非類型模板參數(shù)。實際工程里最常見的仍然是非負整數(shù)和指針別在模板參數(shù)列表里塞浮點數(shù)double——浮點數(shù)在編譯期比較多少存在精度和等價性問題標準過去明確禁止現(xiàn)在某些場景仍容易踩坑。3.2 默認模板參數(shù)什么時候能用、什么時候不能用類模板和函數(shù)類似也可以給模板參數(shù)一個默認值templatetypename T, typename Container std::vectorT class Stack { public: void push(const T value) { data_.push_back(value); } private: Container data_; }; Stackint s1; // 相當于 Stackint, std::vectorint Stackint, std::dequeint s2;給第二個模板參數(shù)默認值之后就能在不指定Container的情況下直接使用Stackint。需要注意默認值的展開是“參數(shù)相關”的std::vectorT里的T是第一個模板參數(shù)C 的默認模板參數(shù)允許引用前面的模板參數(shù)這是合法的而且非常實用。不過你不能讓一個帶默認值的參數(shù)出現(xiàn)在不帶默認值的參數(shù)前面除非編譯器能推斷出該參數(shù)的實參。規(guī)則和函數(shù)默認參數(shù)很像一旦某個參數(shù)開始使用默認值后面所有參數(shù)也必須提供默認值。類模板構造時如果想顯式指定Container但讓第一個參數(shù)用默認值那是做不到的因為模板實參按位置匹配沒辦法“跳過”。3.3 全特化與偏特化當同一套代碼覆蓋不了特殊情況類模板的通用實現(xiàn)是針對絕大多數(shù)類型的但某些具體類型可能需要完全不同的處理。比如你要寫一個通用的類型信息打印工具TypeDescriberT對普通類型返回名字對int和std::string單獨給出更具體的信息。這時就可以做全特化。#include string templatetypename T struct TypeDescriber { static const char* name() { return unknown; } }; template struct TypeDescriberint { static const char* name() { return int; } }; template struct TypeDescriberstd::string { static const char* name() { return std::string; } };寫法是先寫template表示這是一個對某個具體類型的全特化后面跟struct TypeDescriberint。注意template后面是空的尖括號不是templatetypename T。當你調用TypeDescriberdouble::name()時走通用版本調用TypeDescriberint::name()時走特化版本。偏特化則更進一步你并不把所有模板參數(shù)都確定下來而是對某一類形態(tài)做定制。比如“所有指針類型”是一個形態(tài)“所有 const 限定類型”是另一個形態(tài)templatetypename T struct TypeDescriberT* { static const char* name() { return pointer; } }; templatetypename T struct TypeDescriberconst T { static const char* name() { return const value; } };偏特化最常見的形態(tài)包括指針類型、引用類型、std::arrayT, N這種容器類型。本質上編譯器在模板匹配時會優(yōu)先選擇更特化的版本。它能支持非常復雜的模式匹配比如templatetypename T, typename U struct X;可以偏特化出templatetypename U struct Xint, U這意味著“當?shù)谝粋€參數(shù)是int時就用這套特別的實現(xiàn)”。掌握這一招寫類型萃取和編譯期分發(fā)會輕松很多。3.4 特化誤用警告不要試圖偏特化函數(shù)模板這里想特別提醒一句類模板可以偏特化函數(shù)模板不能偏特化。很多人學到類模板偏特化后會順手在函數(shù)模板上試// 不要這樣寫編譯器會報錯或者行為不符合預期 templatetypename T void foo(T value) {} templatetypename T void fooT*(T* value) {} // 函數(shù)模板不能偏特化函數(shù)模板如果要對指針做特殊處理更常規(guī)的做法是使用函數(shù)重載或者通過 C20 的requires約束實現(xiàn)。你不必非要“修正”這一限制。理解了類模板偏特化和全特化的區(qū)別工程中就夠用了。4. 成員函數(shù)、友元和繼承類模板組合玩法中的容易出事點4.1 依賴類型必須寫 typename寫類模板時成員變量或者函數(shù)體里經(jīng)常會用到“依賴類型”也就是依賴于模板參數(shù)的類型。比如你希望T內部包含一個iterator類型templatetypename T class CollectionHelper { public: void iterate() { // 這里 T::iterator 是依賴類型 typename T::iterator it container_.begin(); while (it ! container_.end()) { it; } } private: T container_; };T::iterator為什么必須加typename因為在編譯器眼里T是未知的T::iterator可能是一個類型也可能是T里的一個靜態(tài)變量名。C 語法規(guī)定在模板中默認把這種限定名當作值處理除非你顯式用typename告訴它“這是一個類型”。不加typename時編譯錯誤往往很繞比如“需要類型說明符”或“缺少;”。這個錯誤在類模板里非常高頻我在很多代碼評審里都見過。同樣的規(guī)則還體現(xiàn)在類型別名上templatetypename T using IteratorType typename T::iterator;4.2 友元函數(shù)在類模板內部的兩種寫法普通類的友元很好理解類模板里的友元稍微復雜。最常見、也最不容易出錯的是“在類內部直接定義友元函數(shù)”此時友元函數(shù)和當前模板實例綁在一起templatetypename T class Number { public: Number(T value) : value_(value) {} friend Number operator(const Number lhs, const Number rhs) { return Number(lhs.value_ rhs.value_); } private: T value_; };這樣每次實例化Numberint時會同時生成一個對應的operator(const Numberint, const Numberint)函數(shù)。它只接受與當前實例化完全匹配的類型避免了跨類型的隱式轉換問題。很多運算符重載的模板實現(xiàn)都用這種內聯(lián)友元寫法。如果你想在類外定義友元函數(shù)需要先聲明模板函數(shù)再在友元聲明處用模板參數(shù)來“特指”寫法比較繁瑣而且很容易出現(xiàn)“友元函數(shù)模板匹配不上”的謎之錯誤。對于大多數(shù)業(yè)務代碼我更推薦優(yōu)先用成員函數(shù)或者內聯(lián)友元只有在需要支持形如T U這樣兩個不同類型同時參與運算時才考慮外部模板函數(shù)配合友元。4.3 繼承類模板注意依賴基類名字的坑類模板也可以繼承其它類模板。這個場景在實現(xiàn)“自定義容器適配器”或者“策略模式”時經(jīng)常遇到。比如基類是一個帶有某個成員函數(shù)的模板templatetypename T class Base { public: void baseMethod() { // ... } }; templatetypename T class Derived : public BaseT { public: void derivedMethod() { baseMethod(); // 這里可能編譯失敗 } };在模板派生類里直接寫baseMethod()可能報錯因為編譯器在解析非依賴名字時不會去依賴基類BaseT中查找——在模板定義階段它對BaseT一無所知不能確定baseMethod是否存在。解決辦法是用this-讓它變成依賴表達式或者顯式寫B(tài)aseT::baseMethod()templatetypename T class Derived : public BaseT { public: void derivedMethod() { this-baseMethod(); BaseT::baseMethod(); } };這個看起來像“多此一舉”的this-實際上是模板兩階段查找機制的直接后果。只有理解了這個規(guī)則遇到這類報錯時才會想到去加this-而不是懷疑編譯器壞了。5. 模板代碼為什么必須放頭文件編譯模型與鏈接錯誤5.1 編譯器要看到完整的模板定義才能“按實參生成代碼”普通類的做法是頭文件放聲明源文件放實現(xiàn)調用方編譯時只需看到類聲明。但類模板不能這么干。原因很簡單編譯器在Stackint s;這一行需要知道Stackint的完整定義包括成員變量大小、成員函數(shù)函數(shù)體才能生成代碼。如果頭文件里只有templatetypename T class Stack;這行聲明沒有實現(xiàn)實例化時就會報“未定義類型”或鏈接階段提示缺少函數(shù)實現(xiàn)。一種常見但很糟糕的做法是試圖把模板實現(xiàn)寫在.cpp里然后讓另一個.cppinclude 它。這么做經(jīng)常導致多份定義或者鏈接錯誤。正確做法是把模板定義完全放在頭文件里或者至少讓實現(xiàn)對使用方可見。這不是 C 的缺陷而是模板實例化模型決定的——它不像 Java 泛型那樣在運行時抹除類型而是在編譯期替使用方把具體類型生成出來。5.2 extern template 與顯式實例化大型工程的務實手段當同一個模板被幾十個源文件使用同一組參數(shù)實例化時每編譯一個.cpp編譯器都生成一份相同的實例化代碼鏈接器再合并去重。編譯時間會變得很難看。C11 提供了extern template幫助緩解這個問題?;酒鸩绞窃谀骋粋€.cpp里顯式實例化你需要的類型// stack_inst.cpp #include Stack.h template class Stackint; template class Stackdouble;然后在頭文件里聲明這些實例在其它翻譯單元已經(jīng)存在// Stack.h extern template class Stackint; extern template class Stackdouble;這樣其它.cpp看到Stackint時會相信“它的已經(jīng)完全實例化編譯這一份時別再生成第 N 遍”從而減少編譯時間。代價是你必須提前手動列出所有用到的類型組合這對類型不定、用戶會自由實例化的泛型組件來說并不現(xiàn)實。所以extern template通常用于庫內部已知的熱點實例比如標準庫就大量用于std::string、std::vector...的顯式實例化。普通業(yè)務項目不必一開始就逼自己用等編譯時間真的大到影響開發(fā)效率時再針對性優(yōu)化。5.3 兩階段查找模板代碼亂序帶來的常見編譯問題模板的名字查找分為兩個階段。第一階段是解析模板定義本身時查找不依賴模板參數(shù)的名字第二階段是在實例化時查找依賴模板參數(shù)的名字。這正是上一節(jié)派生類調用基類成員需要this-的深層原因。舉一個更直白的例子同一段模板代碼放在被調用函數(shù)之前或之后結果可能不同void helper() { // ... } templatetypename T struct Test { void call() { helper(); // 第一階段就能找到非依賴名字 helper T::action(); // 第二階段實例化時查找 } };如果helper在模板定義處之后才聲明第一階段就找不到即使你實例化模板時helper已經(jīng)存在也不行。非依賴名字必須在模板定義處可見。理解了這一點排查“為什么模板內調用的全局函數(shù)找不到”這類問題就知道該往哪個方向查了。6. 現(xiàn)代 C 給類模板帶來的新變化CTAD、可變參數(shù)模板與工程習慣6.1 C17 類模板實參推導簡化了日常使用前面提過 C17 的 CTADClass Template Argument Deduction。它最實用的場景是配合構造函數(shù)推導類型參數(shù)減少手寫冗余聲明。比如templatetypename T struct Point { Point(T x, T y) : x_(x), y_(y) {} T x_; T y_; }; Point p(1.5, 2.5); // 推導出 Pointdouble如果兩個參數(shù)類型不一致比如Point p(1, 2.5)那么推導會失敗因為沒有唯一確定的T。這時候編譯器報錯反而能幫我們發(fā)現(xiàn)設計問題到底是該傳兩個int還是應該把其中一個隱式轉換模板推導的理想是盡量自動但不會替你決定潛在歧義。6.2 通過 deduction guide 糾正推導結果CTAD 雖然方便但推導結果偶爾不理想。典型場景是你希望模板參數(shù)類型是“去掉引用和 const 后的類型”或者想對字符串字面量做特殊處理。C17 允許自定義推導指引deduction guide直接告訴編譯器“遇到這種構造方式時推導成什么類型”templatetypename T struct MyString { MyString(const T value) : value_(value) {} T value_; }; // 當傳入 const char* 時不要推導成 const char*而希望保存為 std::string MyString(const char*) - MyStringstd::string;這樣寫MyString s hello;時推導結果不是MyStringconst char*而是MyStringstd::string。這個技巧在寫各種包裝類、適配器類時很常用。需要區(qū)分推導指引只影響推導并不會改變真實的構造函數(shù)行為。6.3 可變參數(shù)類模板C11 引入的模板參數(shù)包讓類模板也能接收數(shù)量不定的類型參數(shù)。最典型的例子就是std::tupletemplatetypename... Ts struct MyTuple { MyTuple(Ts... args) : values_(args...) {} std::tupleTs... values_; }; MyTuple t(1, 2.5, std::string(hello));這里的Ts...是一個類型參數(shù)包展開后等價于把多個類型塞進模板參數(shù)列表。你需要區(qū)分兩個展開位置類型展開和表達式展開。std::tupleTs...是類型展開MyTuple(Ts... args)是把參數(shù)包展開成構造函數(shù)參數(shù)args...是表達式展開??勺儏?shù)模板很容易把代碼風格推向“高級 but 難讀”的極端。我用下來的體會是盡量把參數(shù)包展開集中在一兩個內部工具函數(shù)里不要讓展開邏輯散布整個類外部。std::apply、折疊表達式這些機制也能顯著簡化展開代碼C17 以后寫起來舒服多了。6.4 我寫類模板時堅持的幾個習慣最后分享幾條實際經(jīng)驗都是踩過坑才總結出來的。第一類模板的對外接口盡量保持小。模板代碼一旦編譯錯誤報錯信息動輒幾百行接口越復雜理解成本越高。能拆成普通函數(shù)就別把所有邏輯都塞進模板類里保證只有真正需要類型參數(shù)的地方才用模板。第二所有依賴類型都顯式寫typename。這會讓代碼啰嗦一點但極大降低編譯期歧義。代碼是寫給其他人讀的typename T::iterator一眼就能看出“這是類型別名”不加則要猜半天。第三模板定義按“先聲明、后定義”組織把非模板邏輯部分盡量抽到普通函數(shù)。模板實現(xiàn)放頭文件不假但頭文件內部依然可以分成接口聲明區(qū)、實現(xiàn)區(qū)。大型項目里還可以考慮把模板實現(xiàn)拆到_impl.h文件里主頭文件在末尾 include 它至少從觀賞性上會清爽很多。第四別輕易用特化做“性能 hack”。很多人拿到模板第一反應是給特定類型做特化來優(yōu)化。特化本身沒問題但每多一個特化維護成本就多一層。業(yè)務沒有實際性能壓力時先把通用實現(xiàn)寫對再說。真要優(yōu)化用 C20 的 concepts 和requires約束來分派不同實現(xiàn)代碼語義比滿天飛的template清晰得多。模板是 C 最有表達力也最考驗人的一個部分。類模板作為模板體系的基石值得每個人花時間把實例化、特化、友元、繼承這些邊界都過一遍。真正掌握它的標志不是能背語法而是面對一條報錯時能在腦子里快速定位這多半是依賴類型沒寫typename還是模板實現(xiàn)沒被實例化到還是名字查找階段就出了問題。有了這個定位能力模板世界的門檻就基本被跨過了。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
婷婷激情五月综合| 97精品综合久久| 99热免费18| 色色热| 欧美久热| 日本久久超碰| 人妻免费网站| 碰碰碰97国产| 91狠狠色丁香婷婷综合久久精品| 影音先锋91| 五月丁综合在线观看| 丁香五月婷婷香| 狠狠色综合网站久久久久| 激情纯色婷婷五月天在线不卡视频| 色色色色色色色色色色色色色五月天| 三年高清大片免费观看国语| 九九香蕉网| 九九在线视频| 丁XX 成人| 久久激情综合| 99这里有精品久久97| 亚洲视频另类| 日本色99网站| 婷婷丁香无码专区| 91av传媒高清在线视频网| 丁香色综合| 在线观看玖玖资源免费观看| 亚洲精品久久久久久久久久吃药| AV 3P| 99热婷婷| 五月婷婷六月丁香| 亚洲va欧美| 五月天色站| 久久久国产精品黄毛片| 久久国产一区二区三区| 色五月情| 97日韩无套内| 丁香久久激情俄| 亚洲国产精品SUV| 九九九九这里只有精品| 99热综合| 亚洲无AV在线中文字幕| 国产精品天天狠天天看| 丁香五月婷婷激情四射深爱激情| 亚洲成人日韩无码精品| 人妻中文字幕网| 色五月 婷婷, 大香蕉| 免费无码毛片一区二区A片| 91色综合| 97色色婷婷| 综合激情在线视频| 免费精品99| 九九热在线99| 亚洲日韩一页精品发布| 丁香五月亚洲综合丝袜| 99九九热视频免费| 第四色激情网| 99在线爽| 天天综合影院| 午夜亚洲国产精品av一区二区| 丁香五月成人网| 亚洲色情在线| 亚洲五月婷婷| AⅤ网站在线看| 老师的粉嫩小又紧水又多A片视频 粉嫩AV久久一区二区三区 | 婷婷涩五月| aa久久| 99九九在线视频| 欧美超级视频97| 超碰av天堂| 日韩另类在线观看| 精品婷婷五月天| 99九九视屏| ji'qi'luan'ren'lun| 激情五月丁香六月综合AVXXXX| 色色色色色色色色色色色色色色,网站| 夜夜做夜夜愛| 99超级碰免费视频| 伊人九热| 久久色频| 日日噜噜夜夜狠狠久久丁香六月| 色婷婷电影网| 黄色短视频在线观看| 九九热精品99| 九九热短视频在线观看 | 六月丁香激情| 五月婷婷激情综合| 成人资源在线| 天天成人综合| www.久久99热地址发布| 久久人妻精品| 激情九色| 黄色一极大片| 超碰99在线观看| 强奸幻女毛片| 久久精彩综合视频| 婷婷亚洲在线| 美日韩成人| 日本人妻伦在线中文字幕 | 香焦网五月天| 五月丁香六月色婷婷| 五月天婷婷影院影院观看| 婷婷深爱五月| 成人.在线日韩| 野外99热| 婷婷五月久久| 天天插天天插| 欧美操人| 激情婷婷丁香五月天| 天天爽天天操| 天天射综合网站| 丁香五月天天日| 五月婷婷激情久久| 婷婷综合婷婷| 中文久久久人妻| 99热这里只有精品3| 婷婷伊人綜合中文字幕| 色情五月婷| 色综合性视频| 五月色丁香| 97碰碰碰| 亚洲这里只有精品| 精品综合网在线| WWW.99热| 久草A片| 五月丁香花成人社区| 色999五月色| 九九机热| 婷婷最新地址| 亚洲五月天婷婷在线| 婷婷深爱五月| 久久九区| 色播五月婷婷| 激情综合5月| 停停五月色宗合| 嘿嘿视频免费看9| 精品国产va久久久久| 欧美久久网| 丁香九月色| 亚洲一色色色色色色色色| 久99视频在线观看| 色婷婷导航| 久久精品性爱| 五月丁香综合激情网| 五月激情偷拍| 97婷婷狠狠久久综合9色| 99热这里只有精品50| 深爱激情丁香| 青青操avbb| 激情久久综合| 激情视频婷婷五月花| 深爱婷婷网| 亚洲av成人一区二区电影在线| 五月丁香婷婷六月天| 99riAv1国产在线观看| 色天堂婷婷| 激情五月第四色| 日本久久99| 91九色精品女同系列| 五月丁香自拍| 人妻性爱av网站| 女人天堂AV| 婷婷五月天AV网| 欧美日韩999| 色五月婷婷综合| 殴美日韩成人| 久久久妻人人人| 亚洲操逼网| 激情婷婷五月女| 激情五月天丁香| www.99热国产| 丁香99| 五月丁香AV在线| 五月激香蕉网| 超碰97免费在线| 色99在线观看| 夜夜嗨一区二区三区直播内容 | 26UUU欧美激情一区二区| 99A片| 开心亚洲久久开心| 五月综合久久| 狠狠色噜噜狠狠狠狠综合| 97超级碰碰碰| 五月天综合网| 婷婷五月激情视频| 色五月婷婷久久| 99热欧美在线观看| 超碰成人在线免费观看| 婷婷亚洲综合| 伊人久久五月天| 7777精品伊人久久久大香线蕉最新版| 五月色网| 四月婷婷五月丁香| 天堂五月婷婷| 色婷婷a| 婷婷五月天亚洲| 日韩砖区| 久久99精品久久久久久噜噜| 熟妇人妻中文字幕无码老熟妇| 五月色网| 九月丁香婷婷综合激情| 狠狠综合区| 色综合激情| 在线综合婷婷| 亚洲高清在线| 日韩AV中文字幕在线| 丁香六月啪啪| 国产亚洲精品久久一区二区三区| 久久国产精品乱子伦_靑青草…| 嫩草哈哈操| 五月丁香六月婷婷综合网| 五月丁香婷婷激情四射迷人| 婷婷无五月无码视频| 亚洲精品色| 婷婷五月丁香高清无码| www.狠狠| 国内一级精品| 激情综合网站| 亚洲av成人一区二区电影在线| 天天狠狠夜夜狠狠2023| 激情综合色图| 亚洲热视频| 亚洲色婷婷色| 蜜臀AV在线成人| 五月丁香婷久久| 六月丁丁香| 9热在线观看| 亚洲性图一区二区| 69五月天视频| 99热欧| 日韩操逼大片| 五月丁香好婷婷A片网| 婷婷狠狠青青| 影音先锋自拍网| 欧美va在线| 激情五月婷婷丁香| 色五月丁香五月天| 狠狠色 综合色区| 激情综合啪啪| 91chinese在线| 91人人看| 丁香五月天激情四射网络不好 | 色五月婷婷五月丁香五月激情五月视频| 色约约视频一区二区三区四区五区| 久久思思热| 激情AV在线| 丁香婷婷婷五月| 久久机热这里只有 | 丁香五月婷婷www..com| 婷婷黄色网| 精品欧美一区二区三区久久久| 人妻AV在线| 99热99极品观看| 激情五月婷婷五月丁香五月开心五月| 开心激情网五月天| 久久最新色| 狠狠操综合| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 久久新地址| 天天综合网91| 99久久99视频只有精品| 5月丁香婷婷| 丁香婷婷久久| 九九一综合精品| AV伊人青草丁香六月| 欧美va视频| 超碰操网| 国熟女视频| 亚洲综合网激情五月天| 久久 视频这里只有精总| 婷婷丁香五月激情中文字幕版| 久草五月天电影网| 激情 五月 婷婷 丁香| 色吧综合网| 国产亚洲色婷婷99精品| 天天操天天谢| 婷婷五月色色| 图片区 小说区 区 亚洲五月 | 五月丁香大相交| 亚洲情色一区| 高清无码 一区 二区 三区| 日韩一区二区在线播放| 999热成人在线综合网| 欧美草久久五月天91| 五月婷婷啪啪啪啪| 久热这里| 日本偷拍九九九| 五月婷婷综合影院| 久久小视频免费| 蜜臀九九九九| 任你爽精品免费视频6| 久久人操| 99re资源在线视频导航| 久久久91| 99热这里只有精品在线播放| 99ri精品视频在线观看| 欧美情色电影一区二区| 中文精品在| 成人深爱丁香五月| 色噜噜狠噜噜视频| 国产精产国品一二三在观看 | 玖玖视频福利| 欧美亚洲操逼| 国产 码在线成人网站| 色综合五月天| 激情綜合網址| 五月丁香基地| 国产精品色| 色综啪啪| 五月色欧美| 五月丁香综合中文| 九月丁香婷婷网| 五月丁香av中文| 激情综合网,婷婷五月天| 67194中文字幕| 国产成人精品一区二区三区视频| 影视av久久久噜噜噜噜噜三级| 人人干天天操五月丁香| 色婷婷99| 亚洲成人中心| 99re视频精品| 国产成人片| 日熟女| 婷婷丁香五月激情中文字幕版| 五月婷婷|欧美| www.9操| 日本一毛片| 丁香婷婷十月| 狠狠色丁香乆乆| 亚洲色综合| 日本VA视频| 99热久久这里只有精品| 99 r热| 黄色成人网站在线播放| 99热在线播放| 婷婷丁香69精华| 99热这里只有精品首页| 久久久九九视频精品18| www.激情五月天| www.五月天| 久99久在线| 99久在线精品99re8热| 五月丁香婷婷成人网| 亚洲旡码| 综合色99| 任你草| 五月天激情网站| 综合五月激情| 久久这里有| 色色五月婷婷狠狠| 天天天摸夜夜夜玩| 久久免费干| 久久66精品| 性一交一乱一交A片久| 久99| 婷婷五月色| 99九九精品| 久久婷网| 久久婷婷五月综合97色一本| 欧美色婷婷| 丁香五月婷婷亚洲综合精品| 日日噜噜夜夜狠狠久久丁香六月| 五月丁香激情综合| 99热97| 亚洲综合网区| 亚洲中文字幕在线观看| 欧美激情综合色综合色| 伊人超碰在线| 人妻AV在线观看| 亚洲无aV在线中文字幕 | 婷婷的色色五月天| 淫视馆aV二区一区| xxxx五月激情| 五月天操逼激情| 亚洲色综合性| 国产综合81p| 色婷婷超碰| 性爱网五月天| 亚洲妇女熟BBW| 丁香婷婷人妻综合网| 欧美内射AAAAAAXXXXX| 婷婷五月天日逼| 欧美槡BBBB槡BBB少妇| 天天爽人人爽| 在线99精品| 九九大香视频| 99爱免费在线观看| 人妻Av在线| 久久综合影院| 五月天开心色情网| 免费观看2018www黄色操逼网站| 99精品视频在线观看| 99久在线观看| 五月激情四射网站| 99玖玖免费视频| 99re这里只有精品9| 国产AV国片偷人妻麻豆| 欧美丁香婷婷五月| 丁香六月 婷婷六月| 操大屄五月天视频| 丁香六月情| 五月丁香六月婷婷的女人| a久久| 99日这里只有精品| 久久丁香婷婷五月天| 国产XXXX搡XXXXX搡麻豆| 常久最新免费的色吊丝| 久久99婷婷| 大伊香蕉精品视频在线 | 538任你爽| 六月色色婷婷| 综合网色| 玖色色综合| 色五月激情婷婷| 五月天婷婷五月| 在线观看996精品| 日韩一级片| 婷婷天天色| 中文字幕婷婷五月天| 五月天婷婷无码| www九九热| 色性日本| 丁香五月天色综合| 色v综合网| 综合色、色综合| 思思99久久| 这里只有精品视频看看| 综合激情啪啪| 五月丁香婷婷色色色| 婷婷五月色播天| 另类在线| 亚洲av日韩无码| 五月色丁香激情| 思思99热这里只有精品| 亚洲色激情| 色婷婷导航| 大香蕉AV在线| 五月婷婷之综合激情| 香蕉AV777XXX色综合一区| 色欲久久综合| 中文字幕九九九九| 久久新地此| 岛囯综合激情网| 疯狂做受XXXX高潮A片| 国产精品色婷婷99久久精品| 五月婷婷69| 婷婷五月噜噜| 婷婷五亚洲| 精品99爱免费视频在线观看| 亚州激情在线视频| 亚洲视频在线观看99| 4399亚洲视频| 色碰97| 丁香色成人| 久久99大| 99在线看视频| 久草婷| 亚洲亚洲人成综合网络| 激情丁香五月婷婷| 国产精品18久久久| 激情综合五月丁香| 国产精品18久久久| 久久性爱99国产| 亚洲成av人影院| 欧美操人| 欧亚成人A片一区二区| 公的粗大挺进了我的密道| 色色色色网站| 白人荫道BBWBBB大荫道| 超碰天堂网| 五月丁香六月片| 99国产在线精品视频| 99国产精品久久久久久久久久久| 九八Av| 国产精品日本一区二区在线播放| 欧美性猛交99久久久久99按摩 | 丁香色六月婷婷| 91美女被操| 亚洲另类电影| 婷婷丁香五月天欧美| 五月丁香激情综合六月涩涩爱| 亚洲AV激情五月综合网| 色综合日日| 欧美五月婷婷| 久久一热| 色五月色五天色情网| 色婷婷久久综合| 六月丁香啪啪| 亚洲网在线观看| 久久大国产香蕉| 五月丁香A∨在线| 97丁香五月| 超碰精品在线| 激情丁香网| 激情五月婷婷六月丁香| 婷婷午夜丁香| 国产精品18久久久| 五月婷婷国产| 丁香五月婷婷激情小说| 区区欧美你爱| 五月丁香激情综合| 国产,欧美,学生妹,视频| 亚洲视频另类| 国产伦理精品高清在线观看网站一区二区| 亚洲色五月天是什么| 色色综合视频| 色色色色热| 99cao婷婷| 91久久九久久九久久九久久九久久| 91狠狠色| 久久机热这里只有精品| 1024日韩| 婷婷五月丁香综合桃花色网| 9er热在线精品视频| 六月丁香好婷婷| 99久超碰| 骚逼视频一区2区| 久久丁香五月| 少妇人妻综合色6699| 91人人操.COM| 影音先锋男人AV资源站| WWW,五月天| 免费播放99性爱视频| 婷婷久久大香蕉| 成人五月丁香花| 丁香六月啪啪啪| 丁香五月AV综合激情| 久久综合婷婷五月| 色五月天婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷 | 五月人妻婷婷| 91操碰| 五月婷狠狠| 女人露出p毛视频www网站| 久久久精品色色色| 丁香六月婷婷久久综合| 色天堂A| 五月婷婷视频28| 激情六月婷婷| 伊人久久大香线蕉av最新| 五月天成人手机在线视频| 丁香婷婷啪啪| 99九九精品视频| 99re思思热久久| 丰满少妇乱A片无码| 成人AV免费观看| www,26uuu,c0m,色情| 欧美搡BBBBB摔BBBBB| 久久五月网| 色五月天婷婷| 丁香五月桃花在线激情综合| 四色女婷婷| www.激情| 五月婷婷激情四季| 九九热在线视频| 狼人狠狠操| 五月天综合久久| 久久99激情五月天| 丁香五月天天高清在线| 丁香五月激情久久麻豆| 99色播| 99国产精品久久久久久久久久久| 久久机热这里只有精品免费视频| 九九aV| 六月婷婷七月丁香| 另类 在线| 亚洲Av成人在线观看| 天天色色天天| 色天堂操| 97热精品| 综合久久9| 丁香婷婷六月天| 久久婷婷色情7777网站| 91超碰人人操| 九玖视频这里只有精品| 这里只有精彩视频| 婷婷五月天无码熟女| 久久综合婷婷| 夜夜夜夜操| 一本色综合色| 亚洲天堂aaa| 99在线播放| 亚洲欧美国产高清vA在线播放| 久超免费视频| 天天干,天天日| 99狠狠| 97人妻碰碰中文无码久热丝袜| 婷婷伊人网| 久久婷婷亚洲| 人人操超踫| 人人操大| 中美日韩成人在线| 亚洲人人96@| 欧美三级巜人妻互换| 久久婷婷一级片| 国产综合丁香五月天| 亚洲激情综合| 五月天色播网| 9l久久久视频| AAA久久久| 激情综合婷婷五月| 超碰成人影视| 色婷婷香蕉| 热的国产,热的综合,热的有码| 四川女人毛多水多A片| 开心五月综合| 日韩一级A片黄色| 可以看的av| SS丁香五月婷婷| 五月色亚洲| 99热只有| 天天色综合图片| 久久久.COM| 欧洲色区| 五月天狠狠色| 俺去也在线官网| www.com.色色| 色噜噜狠狠色综合日日| 99热这里只有精品首页| eeuus五月婷| 欧美婷婷综合| 久久久婷| 丁香久久五月婷综合| 六月婷婷视频| 亚洲婷婷丁香| yw国产AV| 久久曰曰| 99热天堂| 久久婷婷五月草视频| 99 re视频一区| 亚洲黄色网址| 婷婷综合视频| 丁香婷婷激情| 天天色天天爱天天爽| 99ri久久| 免费超碰在线| av操B网站| 欧美色六月婷婷| 六月久久婷婷| 婷五月天| 五月成人丁香av91| 色五月激情网| 久久免片| 婷婷五月综合色拍| 五月综合婷婷五月| 色婷婷a三区麻| www.激情.com.| 激情综合在线播放| 九九热这里只有精品9| 亚洲精品99| 秋霞AV淫| 99这里只有精品视频| 狠狠操狠狠狠| 啪啪啪啪五月天| 天天爽在线视频| 爆乳熟女一区二区三区爆乳| 九九热内射| 青柠影视免费高清电视剧| 色碰碰视频| 99综合| 久久人妻伦理| 久热网站| 99热这里只有精品国产首页| 午夜电影网VA内射| 五月花亭亭| 玖玖九九99| 99热这只有| 婷婷欧美色| 啪啪啪综合网| sesesesezonghe| 超碰九九热| 亚洲精品在线视频| www、丁香五月天| 91日日日| 久久五月激情综合| 99精品国产热久久91色欲| 大香蕉婷婷久久| 99re在线视频| 玖玖综合色| 日日噜狠狠| 婷婷娌伦网| 五月丁香久久色| 婷婷五月丁香色播| 亚洲激情综| 国产 亚洲 在线| 操91| 《》【无码】想被搞到爽AV应募而来的超M素人 西纯子 10musume-011723-01 | 欧美在线操| 婷婷五月花| AV色五月婷婷| 日日爽日日操| 激情婷婷综合五月少妇| 丁香五月成人社区| 97亚洲婷婷| 五月婷婷激情综合| 九九亚洲视频| 成人性生活免费观看。| 69色婷婷| 丁香五月天欧美成人| 中文aV网| 99久在线精品99re8热| 婷婷五月激情的图片| 久久只有18视频| 婷婷97狠狠成人网站| 一级内射毛片| 亚州操操| 性 色 婷婷| 这里只有精彩亚洲视频推荐| 色婷婷88| 国产精品99久久久久久久女警| 97操在线| caop在线视频| 久久这里有精品99| 久久99综合网| 亚州美女| 日本婷婷在线| 色五月天中文字幕| 九九热精品视频在线观看| 深爱五月激情五月| 91 久热| 丁香五月欧美成人| 岛国av电影网站| 七七色色综合| 一级黄在线| 99热日韩| 婷婷99狠狠| 婷婷六月伊人| 99婷婷| 亚洲日比视频| 这里有精品99| 爱草人视频| 中文字幕成人| 玖玖精品婷婷| 五月天伊人日日噜影片AV| 久大香蕉| 五月综合激情网| 婷色五月| 天天艹夜夜艹| 亚洲精品白浆高清久久久久久| 五月天久久网站| 日本成人噜噜噜噜噜| 二色AV| 国产三级在线播放| 久久五月网| 色色免费网站| 91色干| hd五月婷婷在线| 色综合丁香| 久久激情婷婷| 色噜噜在线| 九九在线视频| 黄色AV日韩| 99热这里只有精品5| 内射在线CHINESE| 伊人婷婷五月天| 色五月婷婷网| 国产操逼网站| 丁香五月六月激情久久| 中文字幕日产A片在线看| 婷婷中文无码| 五月天天久久香| 丁香五月色情av| 亚洲婷婷丁香五月天激情小说 | 五月天大香蕉婷| 97色伦另类图片小说视频| 九九热免费视频| 深夜男女福利刺激影院一区| 狼人婷婷久久| 婷婷丁香成人五月天| 五月丁香中文字幕| 99热99日天天干| 五月丁香婷庭在线| 亚洲色图欧美色图日本视频| 五月天小说激情| av九九| 五月丁了香蕉综合| 日本色婷婷| 亚洲色婷婷| 久久激情综合| AAA久久| 超碰在线看| 五月丁香影院| 99操视频| 日韩婷婷五月天| 九九热青草| 九九久久五月天综合伊人| 欧美槡BBBB槡BBB少妇| 狠狠干天天内射| 99re热视频这里只精品| 亚洲十月婷婷综合| 99热午夜精品| www.com五月天| 色原狠狠综合| 九九这里是免费的视频5| www.黄色片-久久成人国产精品在线播放-999AV | 韩国真做片在线观看| 五月丁香999| WW婷婷五月天com| www,av好吊操| 国产一区18| 婷婷五月天激情小说| 久久婷婷伊人| 色播五月丁香| 天天舔天天| 日本天堂网站99| 五月丁香六月激情综合| 欧美人人操| 中文字幕日产A片在线看| 天天综合亚洲综合| 久久免费试看120秒| 欧美三日本三级少妇三99| 国产成人av在线播放| 五月天婷婷小说| 涩五月丁香| 亚洲色图81p| 五月激情六月宗合| 五月丁激情| 免费操超碰| 97人妻碰碰中文无码久热丝袜| 有码人妻久久| 色五月欧美| 亚洲人妻一区二区| 六月婷婷七月丁香| 狠狠操狠狠插| 婷婷淫淫狠狠六月| 成人视屏在线观看| 四季8848精品成人免费网站| 99这里只有精品视频| 99色婷婷| 99视频综合| AV在线中文| 开心五月深爱五月婷| 99久免费视频| 九九热在线视频| 手机免费福利视频| 天天爽在线视频| 午夜激情四射影院| 思思热99热| 成年人看Va免费视频| 精热在线综合网| 成人精品网站在线观看| 激情五月综合| 激情五月天小说网| 少妇日麻屄| 色娸娸综合网| 亚洲xx在线| 色五月五月婷婷| 综合成人小说婷婷| 开心五月深爱五月婷| 538任你爽| 久久婷婷五月综合色天| 黄桃AV无码免费一区二区三区| 丁香五月天AV| 伊人日日干| 97综合在线| 九色PORNY在线精品酒店| 久久视频在线视频| 九九免费视频| 991精品在线视频| 久热精品视频| 久久午夜理论| 综合五月草| 五月婷久久草| 婷婷六月久久| 激情性爱五月天网页| 99热这里只有精品8| 色激情五月| 狠狠色综合网站久久久久| 六月香五月婷| 国产五月丁香在线| 久久婷婷热| 五月丁香激情综合六月涩涩爱| 婷婷五月精品| 国产五月视频| 色色五月天婷婷| 国产精品色色| 日本va欧美va欧美| 五月色欧洲| 人妻系列久久久久久久久久久| www.色99| 91avse| 久热91精品| 草草影院爱爱| 日本天堂免费99| 一婬一伦一区二区三区| 97碰碰人人视频| 亚洲色区17| 色色丁香婷婷五月天| 日韩av变天就操逼不卡区| 大地资源色婷婷视频在线 | 丁香五月六月婷婷殴美综合| 亚洲精品久久久久久久久久吃药| 我要色综合五月婷婷| 五月情四婷婷| 婷婷开心青青草| 国产精品色色色色| 婷婷丁香人妻久久在线观看| 五月天婷婷黄色| 日日懆天天懆| 五月丁香六月综合激情无码软件亮点| 丁香六月无码| 日本五月婷婷| 五月精品| 亚洲无线视频| 丁香五月Av| 激情五月婷婷| 无码人妻AV久久久一区二区三区| 无码激情AAAAA片-区区| 久久婷婷五月综合色丁香花| 91操黄| 婷婷基地成人五月天| 亚洲国产网站| 五月婷婷激情| 婷婷6月综合网| 婷婷五月天少妇| 五月久久丁香| 狠狠爱婷婷丁香| 色噜噜综合网| 综合色久| 日本久久激情| 九月婷婷综合网| 日本超碰在线| 天天天天天操| 五月丁香色| 亚洲永久免费| 国产精产国品一二三在观看| 久久精彩视频18| 欧美碰碰碰| 99热个人在线| av免费在线看不卡无毒| 97婷婷丁香五月天激情图片| 亚洲中文字幕av| 涩涩五月天综合| 天天日天天日天天搞| 色综合久久五月天| 成人国产网| 成人一级片| 激情亚洲网| 99人妻碰碰久久久禁片| 无码色综合| 在线色色| 激情色视频| 97超碰在线免费观看| 天天干天天干天天干| 9 1 A v久久久| 97色97干| 99热骚货| 这里只有精品1| 9 1超碰九色| 精国产品一区二区三区A片| 亚洲a片免费观看| 国在线激情网| 色女伊人| 九九免费视频| 99超级超级超级碰| 色综合区| 久久久久久久合一狠狠做深爱| 人妻人人操| 亚洲第一成人无码A片| 人伦30P| 五月激情基地| 成人 在线 日韩| 91在线视频观看午夜福利| 日本免费91| 玖久精品视频9| 99热超碰| 91丁香色五月| 婷婷爱综合| 五月天婷婷无码| 无码人妻丰满熟妇奶水区码| 激情五月,激情综合网| 色A网| 91精品久久久久| 久久99免费视屏| 亚洲性爱99| 日韩成人网址| 9色小视频在线观看| www久久五月com| AV色婷婷| 男女啪啪视频久 9| 色。 婷婷婷| 久久久激情| 亚洲 成人 电影av在线观看| 五月丁香婷婷六月天| 日日夜夜爽爽| 色色色网站| 91Chinese在线| 2025色婷婷| 五月婷三级片| www天天干| 亚洲操操| 色色丁香婷婷| 成人精品人妻| 色婷婷色丁香色欲av| 天天插夜夜爽| 九九热精品视频| 婷婷丁香激情综合色情| 激情五月六月| 噢美99| 丁香五月天欧美| 99网| 六月亚洲婷婷6月中文字幕| 亚洲区视频| 中文字幕,综合,91| 丁香色婷婷| 9色免费网| 这里只有精品2| 666555。COm毛片| 久久久五月激| 婷婷五月天成人| 99色色网| 夜夜爽天天干| 综合99综合久久久久久久| 99综合自拍| 狼人婷婷久久| 伊人玖玖网| 日韩黄色电影| 97操视频| 一级精品999WWW| 九九99精品| 色婷婷影院| www.色婷婷| 99热在线爱| 99在线小视频| 亚洲色综合| 中文字幕黄色片| 这里只有精彩小视频视频网站| 六月丁香啪啪啪| 亚洲人人96@| 五月婷婷色色| 天天综合亚洲综合| 成片免费观看大全| 激情五月天婷婷丁香| xx久久| 婷婷丁香六月天| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 国产精女同一区二区三区久| 色情五月停停丁香| 综合五月丁香六月婷婷| 色五月首页| 日本三级第一页| 五月丁香婷婷AV| 婷婷丁香五月激情图片| avh片在线观看| 丁香婷婷六月| 久久婷婷综合国产| 日本va欧美va国产激情| 丁香五月天欧美| 五月婷婷av在线| 另类图片五月天| 99色在线| 色婷婷丁香五月| 婷婷丁香五月高清| 五月婷婷激情性爱| 激情五月天社区| 丁香五月 六月婷婷首页| 天天透天天干| 综合久久97| 亚州视频九九99| www.com亚洲网站在线免费| 婷婷五月天堂| 九九亚洲小视频| 婷婷综合视频| 亚洲综合五月天| 色色色色网站| 色婷婷婷av| 超碰成人影视| 五月丁香六月激情欧美综合| www,五月天激情| 日韩高清久久| 日韩精品AV一区二区三区| 丁香五月激情在线| 另类A片| 99久久综合狠狠综合久久| 九九色综合网| www.91有码.com| 久久久ww| 婷婷激情六月中文| 婷婷俺去也| 情欲综合网| 51XX午夜影福利| 人妻久久久| 激情五月天小说| 色婷婷中文字母五月丁香| 怡红院91a√| 99热综合网| 久久这里只精品| 丁香五月亚洲无码| 婷婷丁香综合| 丁香五月婷婷激情四射深爱激情| 91九色首页| 99热这里只有免费| 激情六月下句是什么| 久久久jd| 男人大jjc女人免费视频| 久久免片| 成人av在线网址| 五月天婷爱综合| 婷香五月网在线| 中文字幕综合| 五月丁香久久久| 99精品在线播放| 久久久久9| 欧美性色视频| 深爱丁香激情| 色婷婷91激情小说| www.五月婷婷| 五月色婷丁香| 韩国中文字幕91| 夜夜干天天操| 五月天伊人| 婷婷播5月| 秋霞三及片| 色噜噜狠狠色综合伊人| 色色爽爽天天| 久re热视频| 五月天婷久久| 99激情| 狠狠干婷婷| 五月丁香啪啪综合| 97色操| WWW.17C亚洲精品| 婷婷激情社区| 99热这里只有精品23| 五月丁香啪啪激情| 人妻系列久久久久久久久久久| 97人人射| 91大神操美女| 91综合国免费久入| 亚洲AV综合在线观看 | 99视频网址| 五月婷婷成人| 天天射影院| 亚洲亚洲人成综合网络| 色情综合网| 另类少妇人与禽zOZZ0性伦| 深爱激情五月婷婷| 天天艹夜夜艹| 色色五月丁香| 五月天色不卡| 99热综合| 无遮挡国产高潮视频免费观看| WWW.久久.COM| 内射在线CHINESE| 久久综合26p| 丁香五月激情啪啪综合| 中国操逼99| 婷婷日韩| 99热九九在线| 九九热99免费视频| 亚洲视频操| 全亚洲最大的婷婷五月天网站COM| 综合网色| 99开心五月五月丁香激情| 99视频地址| 欧美性色五月天| www.五月天激情| 色色色色av色色色色| 中文久久婷婷| 思思热在线播放| 99热久草| 99热这里只有精品2| 国产肥白大熟妇BBBB视频| 91919191919久久成人视频| 91人久| 9 9热这里有精品| 激情久久五月天| 五月天开心婷婷久久 | 色情五月综合婷婷| 久9视频| 欧美精品18| Aaa久久| 成人在线综合| 激情六月下句是什么| 五月天自拍网| 五月天婷婷久久视频| 五月丁香婷婷基地| 欧美十二区| 丁香久久九九99| 婷婷五月大| 五月婷婷网站| 我去色色网五雨天| 日韩999| 色婷婷亚洲综合av| 天天综合网、天天综合色| 激情丁香淫荡婷婷| 天天操婷婷| 大香蕉九九| 在线综合91| 色五月色五天色情网| 久久人妻情侣| 色综合久久无码| 久久综合婷婷五月| 五月天合网| 思思热精品在线| 亚洲操操操| 91九色超碰| 久久婷婷五月天懂色| 这里只有免费的精品| 天天操加勒比| 蜜桃五月天| 丁香五月色五月| 亚洲九九在线| 99热在线观看精品| 欧类av怡春院| 91色涩| 夜夜操天天爽| 色情五月综合婷婷| www.婷婷五月.com| 婷婷五六月丁香| 丁香五月欧美色综合| 丁香五月婷婷社区| 色99日韩| 色亚洲激情| 亚洲国产精品二二三三区| 久久久久亚洲AV无码网影音先锋| 国产日批视频| 97人凄人人操人人爽| 九月丁香婷婷网| 久久综合热17c| 99在线免费观看| 日韩中出视频| 九九家庭影院| 婷婷午夜激情| 亚洲无码影音| 99国产小视频免费观看| 综合色五月天| 啪精品| 激情婷婷五月色| 开心五月网| 久久免费9| 97干婷婷| 丁香五月之久操视频| 色爱99| 色99色| 婷婷五月电影院| 人人草人| 26uuu成人网| 久久这里只有精品网| 99爱在线视频| 丁香婷婷五月激情四射网| 深爱激情四射| 婷婷激情六月| 久热9| 婷婷色五月激情| 国产亚洲色婷婷久久99精品9j| 五月天婷网| 亚洲精品第一国产综合亚AV | 国产成人精品亚洲线观看| 99热精品在线观看| 日本色综合| 欧美人人超级碰| 五月激情婷婷丁香天堂| 操逼综合激情网| 婷婷六月五月天综合| 99燥99日| 丁香激情六月天婷婷| 日日躁夜夜躁狠狠久久AV| 国产色色网址网站| 可以直接看的AV| 色性综合| 丁香婷婷久久| 99久久黄色顶级视频| 99热在线精品观看| 久久XX| 99操碰| www.91有码.com|