日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

看完这个你还不理解右值引用和移动构造 你就可以来咬我(下)

發布時間:2023/12/15 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 看完这个你还不理解右值引用和移动构造 你就可以来咬我(下) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

共分三篇,這是第3篇。另外兩篇,看完這個你還不理解右值引用和移動構造 你就可以來咬我(上),看完這個你還不理解右值引用和移動構造 你就可以來咬我(中)。

下面是新標準下的其他特性(共十點),了解一下,總有用上的時候。

C++11 新特性分析


  • auto

現在是一種類型占位符,它會告訴編譯器,應該從初始化式中推斷出變量的實際類型。當你想在不同的作用域中(例如,命名空間、函數內、for循環中中的初始化式)聲明變量的時候,auto可以在這些場合使用。

auto i = 42; // i is an int auto l = 42LL; // l is an long long auto p = new foo(); // p is a foo*

使用auto經常意味著較少的代碼量(除非你需要的類型是int這種只有一個單詞的)。當你想要遍歷STL容器中元素的時候,想一想你會怎么寫迭代器代碼,老式的方法是用很多typedef來做,而auto則會大大簡化這個過程。

std::map<std::string, std::vector<int>> map; for(auto it = begin(map); it != end(map); ++it) { }

你應該注意到,auto并不能作為函數的返回類型,但是你能用auto去代替函數的返回類型,當然,在這種情況下,函數必須有返回值才可以。auto不會告訴編譯器去推斷返回值的實際類型,它會通知編譯器在函數的末段去尋找返回值類型。在下面的那個例子中,函數返回值的構成是由T1類型和T2類型的值,經過+操作符之后決定的。

template <typename T1, typename T2> auto compose(T1 t1, T2 t2) -> decltype(t1 + t2) {return t1+t2; } auto v = compose(2, 3.14); // v's type is double
  • nullptr關鍵字

0曾經是空指針的值,這種方式有一些弊端,因為它可以被隱式轉換成整型變量。nullptr關鍵字代表值類型std::nullptr_t,在語義上可以被理解為空指針。nullptr可被隱式轉換成任何類型的空指針,以及成員函數指針和成員變量指針,而且也可以轉換為bool(值為false),但是隱式轉換到整型變量的情況不再存在了。

void foo(int* p) {}void bar(std::shared_ptr<int> p) {}int* p1 = NULL; int* p2 = nullptr; if(p1 == p2) { }foo(nullptr); bar(nullptr);bool f = nullptr; int i = nullptr; // error: A native nullptr can only be converted to bool or, using reinterpret_cast, to an integral type

為了向下兼容,0仍可作為空指針的值來使用。

基于區間的循環
?C++11加強了for語句的功能,以更好的支持用于遍歷集合的foreach范式。在新的形式中,用戶可以使用for去迭代遍歷C風格的數組、初始化列表,以及所有非成員begin()和end()被重載的容器。

?當你僅僅想獲取集合/數組中的元素來做一些事情,而不關注索引值、迭代器或者元素本身的時候,這種for的形式非常有用。

std::map<std::string, std::vector<int>> map; std::vector<int> v; v.push_back(1); v.push_back(2); v.push_back(3); map["one"] = v;for(const auto& kvp : map) {std::cout << kvp.first << std::endl;for(auto v : kvp.second){std::cout << v << std::endl;} }int arr[] = {1,2,3,4,5}; for(int& e : arr) {e = e*e; }
  • Override和final

虛函數在C++中會引起很多問題,因為沒有一個強制的機制來標識虛函數在派生類中被重寫了。virtual關鍵字并不是強制性的,這給代碼的閱讀增加了一些困難,因為你可能不得不去看繼承關系的最頂層以確認這個方法是不是虛方法。我自己經常鼓勵開發者在派生類中使用virtual關鍵字,我自己也是這么做的,這可以讓代碼更易讀。然而,有一些不明顯的錯誤仍然會出現,下面這段代碼就是個例子。

class B { public:virtual void f(short) {std::cout << "B::f" << std::endl;} };class D : public B { public:virtual void f(int) {std::cout << "D::f" << std::endl;} };

D::f本應該重寫B::f,但是這兩個函數的簽名并不相同,一個參數是short,另一個則是int,因此,B::f僅僅是另外一個和D::f命名相同的函數,是重載而不是重寫。你有可能會通過B類型的指針調用f(),并且期盼輸出D::f的結果,但是打印出來的結果卻是B::f。

這里還有另外一個不明顯的錯誤:參數是相同的,但是在基類中的函數是const成員函數,而在派生類中則不是。

class B { public:virtual void f(int) const {std::cout << "B::f " << std::endl;} };class D : public B { public:virtual void f(int) {std::cout << "D::f" << std::endl;} };

又一次,這兩個函數的關系是重載而非重寫,因此,如果你想通過B類型的指針來調用f(),程序會打印出B::f,而不是D::f。

幸運的是,有一種方法可以來描述你的意圖,兩個新的、專門的標識符(不是關鍵字)添加進了C++11中:override,可以指定在基類中的虛函數應該被重寫;final,可以用來指定派生類中的函數不會重寫基類中的虛函數。第一個例子會變成:

class B { public:virtual void f(short) {std::cout << "B::f" << std::endl;} };class D : public B { public:virtual void f(int) override {std::cout << "D::f" << std::endl;} };

這段代碼會觸發一個編譯錯誤(如果你使用override標識符嘗試第二個例子,也會得到相同的錯誤。):

'D::f': 有override標識符的函數并沒有重寫任何基類函數

另一方面,如果你想要一個函數永遠不能被重寫(順著繼承層次往下都不能被重寫),你可以把該函數標識為final,在基類中和派生類中都可以這么做。如果實在派生類中,你可以同時使用override和final標識符。

class B { public:virtual void f(int) {std::cout << "B::f" << std::endl;} };class D : public B { public:virtual void f(int) override final {std::cout << "D::f" << std::endl;} };class F : public D { public:virtual void f(int) override {std::cout << "F::f" << std::endl;} };

用final聲明的函數不能被F::f重寫。

  • 強類型枚舉

“傳統”的C++枚舉類型有一些缺點:它會在一個代碼區間中拋出枚舉類型成員(如果在相同的代碼域中的兩個枚舉類型具有相同名字的枚舉成員,這會導致命名沖突),它們會被隱式轉換為整型,并且不可以指定枚舉的底層數據類型。

通過引入一種新的枚舉類型,這些問題在C++11中被解決了,這種新的枚舉類型叫做強類型枚舉。這種類型用enum class關鍵字來標識,它永遠不會在代碼域中拋出枚舉成員,也不會隱式的轉換為整形,同時還可以具有用戶指定的底層類型(這個特征也被加入了傳統枚舉類型中)。

enum class Options {None, One, All}; Options o = Options::All;
  • 智能指針

智能指針的引用計數和內存自動釋放相關:

unique_ptr:當一塊內存的所有權并不是共享的時候(它并不具有拷貝構造函數),可以使用,但是,它可以被轉換為另外一個unique_ptr(具有移動構造函數)。

shared_ptr:當一塊內存的所有權可以被共享的時候,可以使用(這就是為什么它叫這個名)。

weak_ptr:具有一個shared_ptr管理的指向一個實體對象的引用,但是并沒有做任何引用計數的工作,它被用來打破循環引用關系(想象一個關系樹,父節點擁有指向子節點的引用(shared_ptr),但是子節點也必須持有指向父節點的引用;如果第二個引用也是一個獨立的引用,一個循環就產生了,這會導致任何對象都永遠無法釋放)。
換句話說,auto_ptr已經過時了,應該不再被使用了。

什么時候該使用unique_ptr,什么時候該使用shared_ptr,取決于程序對內存所有權的需求,我推薦你讀一讀這里的討論。

下面第一個例子演示了unique_ptr的用法,如果你想要把對象的控制權轉交給另一個unique_ptr,請使用std::move。在控制權交接后,讓出控制權的智能指針會變成null,如果調用get(),會返回nullptr。

void foo(int* p) {std::cout << *p << std::endl; } std::unique_ptr<int> p1(new int(42)); std::unique_ptr<int> p2 = std::move(p1); // transfer ownershipif(p1)foo(p1.get());(*p2)++;if(p2)foo(p2.get());

第二個例子演示了shared_ptr的用法。盡管語義不同,因為所有權是共享的,但用法都差不多。

void foo(int* p) { } void bar(std::shared_ptr<int> p) {++(*p); } std::shared_ptr<int> p1(new int(42)); std::shared_ptr<int> p2 = p1;bar(p1); foo(p2.get());

第一個聲明等價于這個。

auto p3 = std::make_shared<int>(42);

make_shared是一個非成員函數,具有給共享對象分配內存,并且只分配一次內存的優點,和顯式通過構造函數初始化的shared_ptr相比較,后者需要至少兩次分配內存。這些額外的開銷有可能會導致內存溢出的問題,在下一個例子中,如果seed()拋出一個異常,則表示發生了內存溢出。

void foo(std::shared_ptr<int> p, int init) {*p = init; } foo(std::shared_ptr<int>(new int(42)), seed());

如果使用make_shared,則可以避開類似問題。第三個例子展示了weak_ptr的用法,注意,你必須通過調用lock()來獲取shared_ptr中指向對象的引用,以此來訪問對象。

auto p = std::make_shared<int>(42); std::weak_ptr<int> wp = p;{auto sp = wp.lock();std::cout << *sp << std::endl; }p.reset();if(wp.expired())std::cout << "expired" << std::endl;

如果你試圖在一個已經過期的weak_ptr上調用lock(被弱引用的對象已經被釋放了),你會得到一個空的shared_ptr。

  • Lambdas表達式

匿名的方法,也叫做lambda表達式,被加進了C++11標準里,并且立刻得到了開發者們的重視。這是一個從函數式語言中借鑒來的,非常強大的特征,它讓一些其他的特征和強大的庫得以實現。在任何函數對象、函數、std::function中出現的地方,你都可以用lambda表達式:

std::vector<int> v; v.push_back(1); v.push_back(2); v.push_back(3);std::for_each(std::begin(v), std::end(v), [](int n) {std::cout << n << std::endl;});auto is_odd = [](int n) {return n%2==1;}; auto pos = std::find_if(std::begin(v), std::end(v), is_odd); if(pos != std::end(v))std::cout << *pos << std::endl;

有一點復雜的是遞歸lambda表達式。想象一個代表斐波那契函數的lambda表達式,如果你試圖用auto來寫這個函數,你會得到編譯錯誤:

auto fib = [&fib](int n) {return n < 2 ? 1 : fib(n-1) + fib(n-2);}; error C3533: 'auto &': a parameter cannot have a type that contains 'auto' error C3531: 'fib': a symbol whose type contains 'auto' must have an initializer error C3536: 'fib': cannot be used before it is initialized error C2064: term does not evaluate to a function taking 1 arguments

這個問題是由于auto會根據初始化式來推斷對象類型,而初始化式卻包含了一個引用自己的表達式,因此,仍然需要知道它的類型,這是一個循環問題。為了解決這個問題,必須打破這個無限循環,顯式的用std::function來指定函數類型。

std::function<int(int)> lfib = [&lfib](int n) {return n < 2 ? 1 : lfib(n-1) + lfib(n-2);};
  • 非成員begin()和end()

你也許已經注意到了,我在上面的例子中已經使用了非成員begin()和end()函數,這些是新加到STL中的東西,提升了語言的標準性和一致性,也使更多的泛型編程變成了可能,它們和所有的STL容器都是兼容的,但卻不僅僅是簡單的重載,因此你可以隨意擴展begin()和end(),以便兼容任何類型,針對C類型數組的重載也一樣是支持的。

讓我們舉一個前面寫過的例子,在這個例子中,我試圖打印輸出一個vector,并且找到它的第一個奇數值的元素。如果std::vector用C風格數組來代替的話,代碼可能會像如下這樣:

int arr[] = {1,2,3}; std::for_each(&arr[0], &arr[0]+sizeof(arr)/sizeof(arr[0]), [](int n) {std::cout << n << std::endl;});auto is_odd = [](int n) {return n%2==1;}; auto begin = &arr[0]; auto end = &arr[0]+sizeof(arr)/sizeof(arr[0]); auto pos = std::find_if(begin, end, is_odd); if(pos != end)std::cout << *pos << std::endl;

如果你使用非成員begin()和end(),代碼可以這樣寫:

int arr[] = {1,2,3}; std::for_each(std::begin(arr), std::end(arr), [](int n) {std::cout << n << std::endl;});auto is_odd = [](int n) {return n%2==1;}; auto pos = std::find_if(std::begin(arr), std::end(arr), is_odd); if(pos != std::end(arr))std::cout << *pos << std::endl;

這段代碼基本上和使用std::vector那段代碼一樣,這意味著我們可以為所有支持begin()和end()的類型寫一個泛型函數來達到這個目的。

template <typename Iterator> void bar(Iterator begin, Iterator end) {std::for_each(begin, end, [](int n) {std::cout << n << std::endl;});auto is_odd = [](int n) {return n%2==1;};auto pos = std::find_if(begin, end, is_odd);if(pos != end)std::cout << *pos << std::endl; }template <typename C> void foo(C c) {bar(std::begin(c), std::end(c)); }template <typename T, size_t N> void foo(T(&arr)[N]) {bar(std::begin(arr), std::end(arr)); }int arr[] = {1,2,3}; foo(arr);std::vector<int> v; v.push_back(1); v.push_back(2); v.push_back(3); foo(v);
  • static_assert宏和類型萃取器

static_assert會執行一個編譯器的的斷言,如果斷言為真,什么都不會發生,如果斷言為假,編譯器則會顯示一些特定的錯誤信息。

template <typename T, size_t Size> class Vector {static_assert(Size < 3, "Size is too small");T _points[Size]; };int main() {Vector<int, 16> a1;Vector<double, 2> a2;return 0; } error C2338: Size is too small see reference to class template instantiation 'Vector<T,Size>' being compiledwith[T=double,Size=2]

當和類型萃取一起使用的時候,static_assert會變得更加有用,這些是一系列可以在編譯期提供額外信息的類,它們被封裝在了頭文件里面,在這個頭文件里,有若干分類:用來創建編譯期常量的helper類,用來編譯期獲取類型信息的類型萃取類,為了可以把現存類型轉換為新類型的類型轉換類。

在下面那個例子里,add函數被設計成只能處理基本類型。

template <typename T1, typename T2> auto add(T1 t1, T2 t2) -> decltype(t1 + t2) {return t1 + t2; }

然而,如果你這么寫的話,并不會出現編譯錯誤。

std::cout << add(1, 3.14) << std::endl; std::cout << add("one", 2) << std::endl;

程序實際打印了4.14和“e”,但是如果我們添加一些編譯器斷言,這兩行代碼都會產生編譯錯誤。

template <typename T1, typename T2> auto add(T1 t1, T2 t2) -> decltype(t1 + t2) {static_assert(std::is_integral<T1>::value, "Type T1 must be integral");static_assert(std::is_integral<T2>::value, "Type T2 must be integral");return t1 + t2; } error C2338: Type T2 must be integral see reference to function template instantiation 'T2 add<int,double>(T1,T2)' being compiledwith[T2=double,T1=int] error C2338: Type T1 must be integral see reference to function template instantiation 'T1 add<const char*,int>(T1,T2)' being compiledwith[T1=const char *,T2=int]
  • 移動語義

這又是一個很重要,并且涉及到很多C++11技術特征的話題,關于這個話題不僅僅能寫一段,更能寫一系列文章。

為了區分指向左值的引用和指向右值的引用,C++11引入了右值引用(用&&來表示)的概念。左值是指一個有名字的對象,而右值則是一個沒有名字的對象(臨時對象)。移動語義允許修改右值(之前考慮到它的不可改變性,因此和const T& types的概念有些混淆)。

一個C++類/結構體有一些隱式成員函數:默認構造函數(當且僅當另外一個構造函數沒有被顯式的定義),拷貝構造函數,一個析構函數,以及一個拷貝賦值操作符。拷貝構造函數和拷貝賦值操作符一般會執行按位拷貝(或者淺拷貝),例如,逐一按位拷貝變量。這意味著如果你有一個包含指向某個對象的指針的類,它們只會把指針的地址進行拷貝,并不會拷貝指針指向的對象。這在某些情況下是可以的,但是對于絕大多數情況,你需要的是深拷貝,也就是對指針指向的對象進行拷貝,而不是指針本身的值,在這種情況下你不得不顯式的寫一個拷貝構造函數和拷貝賦值操作符來執行深拷貝。

那么,如果你想要初始化或者復制的源數據是個右值類型(臨時的)會怎么樣?你仍然不得不拷貝它的值,但是很快,這個右值就會消失,這意味著一些操作的開銷,包括分配內存以及最后拷貝數據,這些都是不必要的。

我們引入了移動構造函數和移動賦值操作符,這兩個特殊的函數接受一個T&&類型的右值參數,這兩個函數可以修改對象,類似于把引用指向的對象“偷”來。舉一個例子,一個容器的具體實現(例如vector或者queue)可能會包含一個指向數組元素的指針,我們可以為這些元素分配另一個數組空間,從臨時空間中拷貝數據,然后當臨時數據失效的時候再刪除這段內存,我們也可以直接用這個臨時的數據來實例化,我們只是拷貝指向數組元素的指針地址,于是,這節省了一次分配內存的開銷,拷貝一系列元素并且稍后釋放掉的開銷。

下面這個例子展示了一個虛擬緩沖區的實現,這段緩沖區由一個名字標識(只是為了能更好的解釋),有一個指針(用std::unique_ptr封裝起來),指向一個類型為T的數組,也有一個存儲數組大小的變量。

template <typename T> class Buffer {std::string _name;size_t _size;std::unique_ptr<T[]> _buffer;public:// default constructorBuffer():_size(16),_buffer(new T[16]){}// constructorBuffer(const std::string& name, size_t size):_name(name),_size(size),_buffer(new T[size]){}// copy constructorBuffer(const Buffer& copy):_name(copy._name),_size(copy._size),_buffer(new T[copy._size]){T* source = copy._buffer.get();T* dest = _buffer.get();std::copy(source, source + copy._size, dest);}// copy assignment operatorBuffer& operator=(const Buffer& copy){if(this != ?){_name = copy._name;if(_size != copy._size){_buffer = nullptr;_size = copy._size;_buffer = _size > 0 > new T[_size] : nullptr;}T* source = copy._buffer.get();T* dest = _buffer.get();std::copy(source, source + copy._size, dest);}return *this;}// move constructorBuffer(Buffer&& temp):_name(std::move(temp._name)),_size(temp._size),_buffer(std::move(temp._buffer)){temp._buffer = nullptr;temp._size = 0;}// move assignment operatorBuffer& operator=(Buffer&& temp){assert(this != &temp); // assert if this is not a temporary_buffer = nullptr;_size = temp._size;_buffer = std::move(temp._buffer);_name = std::move(temp._name);temp._buffer = nullptr;temp._size = 0;return *this;} };template <typename T> Buffer<T> getBuffer(const std::string& name) {Buffer<T> b(name, 128);return b; } int main() {Buffer<int> b1;Buffer<int> b2("buf2", 64);Buffer<int> b3 = b2;Buffer<int> b4 = getBuffer<int>("buf4");b1 = getBuffer<int>("buf5");return 0; }

默認拷貝構造函數和復制賦值操作符應該看起來很類似,對于C++11標準來說,新的東西是根據移動語義設計的移動構造函數和移動賦值操作符。如果你運行這段代碼,你會看到,當b4被構造的時候,調用了移動構造函數。而當b1被分配一個值的時候,移動賦值操作符被調用了,原因則是getBuffer()返回的值是一個臨時的右值。

你可能注意到了一個細節,當初始化name變量和指向buffer的指針的時候,我們在移動構造函數中使用了std::move。name變量是一個字符串類型,std::string支持移動語義,unique_ptr也是一樣的,然而,如果我們使用_name(temp._name),復制構造函數將會被調用,但對于_buffer來說,這卻是不可能的,因為std::unique_ptr并沒有拷貝構造函數,但是為什么std::string的移動構造函數在這種情況下沒有被調用?因為即使為Buffer調用移動構造函數的對象是一個右值類型,在構造函數的內部卻實際是個左值類型,為什么?因為他有一個名字temp,而一個有名字的對象是左值類型。為了讓它再一次變成右值類型(也為了可以恰當的調用移動構造函數),我們必須使用std::move。這個函數的作用只是把一個左值類型的引用轉換成右值類型引用。

更新:雖然這個例子的目的是展示下如何實現移動構造函數和移動賦值操作符,但實現的具體細節可能會有所不同.

template <typename T> class Buffer {std::string _name;size_t _size;std::unique_ptr<T[]> _buffer;public:// constructorBuffer(const std::string& name = "", size_t size = 16):_name(name),_size(size),_buffer(size? new T[size] : nullptr){}// copy constructorBuffer(const Buffer& copy):_name(copy._name),_size(copy._size),_buffer(copy._size? new T[copy._size] : nullptr){T* source = copy._buffer.get();T* dest = _buffer.get();std::copy(source, source + copy._size, dest);}// copy assignment operatorBuffer& operator=(Buffer copy){swap(*this, copy);return *this;}// move constructorBuffer(Buffer&& temp):Buffer(){swap(*this, temp);}friend void swap(Buffer& first, Buffer& second) noexcept{using std::swap;swap(first._name , second._name);swap(first._size , second._size);swap(first._buffer, second._buffer);} };

本文轉自:看完這個你還不理解右值引用和移動構造 你就可以來咬我(下)_yapian8的專欄-CSDN博客

總結

以上是生活随笔為你收集整理的看完这个你还不理解右值引用和移动构造 你就可以来咬我(下)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

一级片观看 | 欧美成人tv| 色综合久久综合 | 91探花在线 | 久久综合加勒比 | 国产看片免费 | 欧美日韩精品在线 | www.久久久.cum | 正在播放一区二区 | 美女福利视频在线 | 久久久精品国产一区二区电影四季 | 国产免费黄视频在线观看 | 久久久久久久久久久久久9999 | 婷婷丁香久久五月婷婷 | 成人免费观看电影 | 亚洲视频在线免费看 | 深爱五月网 | 免费成人在线观看视频 | 国产一区二区三区高清播放 | 久久久久久久影院 | 亚洲va欧美 | 久久国产精品久久久久 | 久久精品看 | 成人黄色片免费看 | 久久综合一本 | 婷婷久月 | 亚洲成av人影院 | 亚洲精品免费看 | 欧美精品亚洲精品 | 91香蕉视频黄 | 香蕉视频网站在线观看 | 曰韩在线 | 久草国产在线 | 国产美女被啪进深处喷白浆视频 | 99国产精品 | 久久精品99国产国产精 | 国产精品资源在线观看 | 午夜aaaa| 久草在线观 | 丁香六月网| 亚洲精品激情 | 日韩av免费在线看 | 午夜色影院 | 国产在线播放观看 | 亚州日韩中文字幕 | 国产色秀视频 | 亚洲精品久久久久999中文字幕 | 欧美天堂久久 | 久久精彩免费视频 | 国产69精品久久久久9999apgf | 色吊丝在线永久观看最新版本 | 久久网址| 国产精品美女久久久久久久久 | 四虎国产| 在线国产激情视频 | 天天曰 | 久久一区二区三区超碰国产精品 | 四月婷婷在线观看 | 国产精品毛片久久久久久久久久99999999 | 欧美在线91 | 一区二区观看 | 亚洲免费av电影 | 欧美性生活免费 | 精品国产综合区久久久久久 | 99久久一区 | 午夜 久久 tv| 欧美精品少妇xxxxx喷水 | 亚洲精品在线观看不卡 | 欧美视频日韩 | 久久在线免费观看 | 不卡视频在线 | 91看毛片| 在线观看91精品视频 | 成人av免费在线看 | 国产麻豆视频在线观看 | 亚洲欧美国产日韩在线观看 | 欧美一区二区在线 | 亚洲精品视频在线播放 | 91在线免费播放视频 | 婷婷丁香花五月天 | 欧美日韩在线第一页 | 免费成人av网站 | 蜜臀久久99精品久久久久久网站 | 免费在线激情视频 | 麻豆一区二区 | 黄污视频网站 | 九九视频在线观看视频6 | 国产亚洲精品久久久久久久久久久久 | 天天射天天添 | 成人a v视频 | 九九九视频精品 | 碰超在线观看 | 最新中文字幕在线播放 | 久草资源在线观看 | 久久精品一 | 久久在线免费观看 | 免费日韩精品 | 国产黄色大片 | 欧美不卡视频在线 | 91麻豆传媒| 日韩中文字幕电影 | 色伊人网| 久草在线在线精品观看 | 中文字幕一区三区 | 亚洲精品乱码久久久久久蜜桃91 | 欧美国产不卡 | 国产成人精品亚洲 | 最新中文字幕在线播放 | 亚洲精品国产欧美在线观看 | 国产一级黄大片 | 91你懂的| 亚洲色图激情文学 | 日日噜噜噜噜夜夜爽亚洲精品 | 国产综合香蕉五月婷在线 | 天天综合成人网 | 国产视频黄 | 日韩av在线一区二区 | 在线观看视频一区二区三区 | 久久不射电影院 | 91丝袜美腿| 久久综合中文色婷婷 | 精品一区二区av | 亚洲免费在线看 | 中文字幕国产精品一区二区 | 九九热在线精品视频 | 国产一区网 | 欧亚久久| 在线中文字幕av观看 | 国产麻豆精品95视频 | 黄色美女免费网站 | 亚洲乱亚洲乱亚洲 | avove黑丝| 久久久精品免费看 | 亚洲成a人片在线观看网站口工 | 国产精品专区在线观看 | 免费观看一级视频 | av中文字幕网站 | 精品成人a区在线观看 | 亚洲乱码在线 | 超碰97人人射妻 | 亚洲国产剧情 | 日本系列中文字幕 | 中文字幕中文字幕中文字幕 | 免费在线观看成人 | 欧美在线观看视频免费 | 国产在线视频一区二区 | 国产亚洲久一区二区 | 亚洲激情六月 | 精精国产xxxx视频在线播放 | 久久人人爽人人爽人人片 | 亚洲精品男人的天堂 | 欧美性网站 | 婷婷5月激情5月 | 最新婷婷色| 国产精品一区免费观看 | 99免费在线视频 | 久久在线电影 | 国产一级免费观看视频 | 亚洲精品1区2区3区 超碰成人网 | 娇妻呻吟一区二区三区 | 亚洲成aⅴ人在线观看 | 九九免费在线观看 | 欧美日韩视频免费 | 96精品高清视频在线观看软件特色 | 丁香五月亚洲综合在线 | 久久五月天综合 | 欧美一级电影在线观看 | av在线官网 | 欧美一级视频在线观看 | 久久99热这里只有精品 | 久久国产精品99精国产 | 国产成人av在线影院 | 国产精品成人自产拍在线观看 | 国产午夜精品福利视频 | 81精品国产乱码久久久久久 | 一本一道久久a久久精品蜜桃 | a午夜在线| 三上悠亚一区二区在线观看 | 亚洲伊人av | 欧美乱熟臀69xxxxxx | 成年人在线免费看 | 亚洲最新视频在线播放 | 久久女同性恋中文字幕 | 肉色欧美久久久久久久免费看 | 国产成人精品久久亚洲高清不卡 | 亚洲永久国产精品 | 久草久草久草久草 | 亚洲欧美日韩在线看 | 日韩在线免费看 | 日韩免费在线一区 | 精品一区二区免费在线观看 | 伊人av综合 | 综合精品久久久 | 国产色综合天天综合网 | 综合色婷婷| 亚洲作爱 | 亚洲一区动漫 | 国产精品网站一区二区三区 | 天天色天天上天天操 | 日韩va欧美va亚洲va久久 | 国内精品视频一区二区三区八戒 | 久久综合亚洲鲁鲁五月久久 | 久久中国精品 | 国产午夜小视频 | 99热这里只有精品在线观看 | 免费看片网址 | 国产高清视频在线免费观看 | 综合精品久久 | 久久精品免费播放 | 国产成人精品999在线观看 | 一区二区三区在线观看 | 高清不卡一区二区三区 | 久久久999免费视频 日韩网站在线 | 园产精品久久久久久久7电影 | 日批视频国产 | 久保带人 | 久热电影| 二区在线播放 | 丁香五月网久久综合 | 国产亚洲精品久久久久久电影 | 国产精品久久久久久久久久久久午夜 | 欧美少妇xxxxxx | 麻豆一区在线观看 | 三日本三级少妇三级99 | 欧美色图亚洲图片 | 天天插天天狠 | 欧洲精品二区 | 成人免费在线播放 | 国产精品mv在线观看 | 欧洲在线免费视频 | 99精品在线观看 | 中文字幕在线观看一区 | 国产免费亚洲 | 亚洲国产激情 | 91在线操 | 亚洲国产精品视频 | 国产美女视频免费 | 成人免费xxx在线观看 | 中文字幕亚洲五码 | 国产麻豆电影在线观看 | 色噜噜噜噜 | 欧美一级电影免费观看 | 成 人 黄 色 视频 免费观看 | 国产精品黄色在线观看 | 国产精品美女免费 | av在线免费在线观看 | 国产最新91 | 国产精品乱码一区二三区 | 91精品视频免费在线观看 | 国产精品视频全国免费观看 | 九九精品无码 | 国产精品视频地址 | 免费高清影视 | 久久99久久99精品免观看软件 | 久久久久国产免费免费 | www.色爱 | 欧美a在线看 | 国产成人精品福利 | 日本中出在线观看 | 99视频在线精品 | www·22com天天操 | 中文字幕高清在线 | 91麻豆精品国产91久久久更新时间 | 免费看污在线观看 | 精品二区久久 | 国产精品一区免费观看 | 成年人国产在线观看 | 日韩在线观看免费 | 天天综合网久久综合网 | 成人啊 v| 久久公开视频 | 欧美无极色 | 国产护士在线 | 国产精品久久久久久久久久妇女 | 色噜噜色噜噜 | 夜添久久精品亚洲国产精品 | 欧美日韩激情视频8区 | 国内精品久久久久久久影视麻豆 | 麻豆精品国产传媒 | 不卡中文字幕在线 | 欧美日韩久久久 | 久草视频网 | 97成人在线免费视频 | 91传媒视频在线观看 | 日本中文字幕在线 | 久久久久国产视频 | 国产一区二区播放 | 日本护士三级少妇三级999 | 麻花豆传媒一二三产区 | 又色又爽又黄高潮的免费视频 | 欧美一级性生活 | 69av在线播放| a午夜电影 | 国产无套视频 | 亚洲最快最全在线视频 | 91麻豆精品国产91久久久无需广告 | 国产黄 | 韩国av三级 | 91伊人久久大香线蕉蜜芽人口 | 97偷拍视频 | 精品久久国产精品 | 成人午夜免费剧场 | 五月婷婷中文网 | 日韩高清毛片 | 国产成人精品一区二区三区网站观看 | 麻豆91在线观看 | 欧美做受高潮电影o | 亚洲精品一区二区三区在线观看 | 日韩a级免费视频 | 国产欧美综合视频 | 99免费看片 | 91成人小视频 | 日韩av福利在线 | 久久综合中文字幕 | 国产精品久久久一区二区三区网站 | 日本久久片 | 又色又爽又激情的59视频 | 中文字幕精品三区 | 四虎国产精品免费观看视频优播 | 97品白浆高清久久久久久 | 免费久久99精品国产 | 日韩特级毛片 | 中文字幕免费一区二区 | 国产精品麻豆99久久久久久 | 亚洲精品久久久久久久不卡四虎 | 一区二区三区四区在线 | 午夜视频久久久 | 国产黄a三级三级三级三级三级 | 日本成人黄色片 | 久久福利电影 | 亚洲一级影院 | 超碰97免费在线 | 国产一级大片在线观看 | 日韩欧美在线影院 | 精品国精品自拍自在线 | 国内精品视频在线 | 97超碰总站| 欧美另类成人 | 国产精品欧美精品 | 久久久免费观看视频 | 91色亚洲 | 国产一区欧美日韩 | 中文字幕在线观看1 | 久色 网| 久久综合九九 | 激情婷婷在线观看 | 99久久精品国产欧美主题曲 | 五月婷婷一区二区三区 | 91在线免费播放视频 | 91精品爽啪蜜夜国产在线播放 | 丁香五月亚洲综合在线 | 日韩网站在线播放 | 99久久夜色精品国产亚洲 | 九九免费精品视频在线观看 | 亚洲一二视频 | 色婷在线 | 国产精品自产拍 | 91九色porn在线资源 | 亚洲人成影院在线 | 五月综合色婷婷 | 婷婷深爱五月 | 天天操综合 | 国产91精品久久久久 | 久久久综合精品 | 四虎成人精品永久免费av | 国产第页| 亚洲区另类春色综合小说 | 97视频免费观看 | 在线观看色视频 | 激情网站网址 | 国产高清久久久久 | 色婷婷色 | 99色在线观看 | 91最新视频 | 国内精品久久久久影院一蜜桃 | 亚洲国产99 | 免费网址你懂的 | 亚洲一区二区三区miaa149 | 亚洲午夜精品久久久 | 丁香久久综合 | 欧美日韩高清免费 | 国产精品毛片一区视频播 | 国产成人黄色片 | 国产一区二区精品久久91 | 国产精品mm | 91九色国产在线 | 激情开心色| 日韩大片在线播放 | 国产精品高潮在线观看 | 欧美日韩在线观看一区 | 97精品国产一二三产区 | 中日韩免费视频 | 69成人在线| 久久不射影院 | 亚洲第二色 | 精品视频国产一区 | 久久婷婷精品视频 | 91香蕉视频在线 | 九九亚洲视频 | 色干干 | 亚洲视频中文 | 91av久久| 一区二区中文字幕在线观看 | 国产高清成人在线 | 91视频最新网址 | 成年人在线观看视频免费 | 亚洲国产wwwccc36天堂 | 182午夜在线观看 | 亚洲精品乱码久久久久久蜜桃91 | 国产污视频在线观看 | 久久综合中文字幕 | www久 | 欧美va在线观看 | 99精品免费久久久久久日本 | 在线 视频 一区二区 | 国产精品久久av | 国产原创在线观看 | 九九精品久久久 | 这里只有精品视频在线观看 | 国产护士hd高朝护士1 | 91视频在线免费看 | 亚洲美女视频在线观看 | 久久激情综合网 | 免费视频xnxx com | 国产一级精品在线观看 | 精品久久久久久久久久久院品网 | 九九导航| 中文 一区二区 | 麻花传媒mv免费观看 | 夜夜夜影院| 中文字幕日韩在线播放 | 国产精品黑丝在线观看 | 毛片视频网址 | 精品久久久国产 | av电影一区二区 | 日韩91在线 | 久草干| 久久久精品免费观看 | 视频国产一区二区三区 | 天天色天| 99精品在线观看 | 国产黄色精品在线 | 亚洲日本成人网 | 国产精品99久久久久久小说 | 欧美夫妻性生活电影 | 成人a视频在线观看 | 久久综合婷婷综合 | 九色精品免费永久在线 | 久久99精品国产麻豆婷婷 | av高清网站在线观看 | 久久久久久久久久久国产精品 | 奇米影视777四色米奇影院 | 国产精品视频久久久 | 天天插天天色 | 婷婷99 | 久草在线视频精品 | 免费看片亚洲 | 激情视频免费在线观看 | 免费a视频 | 久久综合狠狠狠色97 | 丰满少妇在线观看 | 又黄又刺激视频 | 久久免费电影 | 久久婷婷久久 | 日韩久久久久久久久久 | 91理论电影 | 国产午夜精品一区二区三区欧美 | 精品欧美日韩 | 四虎海外影库www4hu | 在线观看视频日韩 | 天天亚洲| 久久久午夜精品理论片中文字幕 | 久久精品aaa| 亚洲最新av在线网址 | 日韩欧美网址 | 中文字幕在线看视频国产 | 成人在线播放视频 | 久久夜色精品国产欧美乱极品 | 国产高清视频在线观看 | 久久另类小说 | 美女网站免费福利视频 | 日韩色综合网 | 啪啪免费试看 | 99精品国自产在线 | 麻豆av一区二区三区在线观看 | 国产成人精品免高潮在线观看 | 欧美成人理伦片 | 97超碰伊人 | 一区二区精品在线 | 日日夜夜天天久久 | 欧美精品在线一区 | 国产成人91 | 天天操天天射天天舔 | 69精品视频 | 91久久偷偷做嫩草影院 | 91免费视频网站在线观看 | av青草 | 国产精品一区二区三区免费看 | 丁香六月婷婷综合 | 亚洲综合黄色 | 欧美亚洲精品在线观看 | 久久公开免费视频 | 久久国产精品区 | 国产护士av| 欧美激情xxxx | 免费国产在线视频 | 在线观看成人国产 | 激情久久五月天 | 精品一二三四五区 | 麻豆视频国产 | 欧美成人69av| 欧美男女爱爱视频 | 精品久久久免费视频 | 亚洲成年人av| 午夜精品久久久久久久99 | 久草在线视频首页 | 亚洲综合色av | 亚洲高清视频在线观看免费 | 97在线观看免费高清 | 日本中文字幕系列 | 国产高清久久久 | 91chinesexxx| 国产高清在线 | 五月婷婷久久丁香 | av一区二区三区在线播放 | 欧美一级高清片 | 最新av免费在线 | 久久午夜羞羞影院 | 麻豆91在线播放 | 国产精品久久久久久久av电影 | 久久免费视频这里只有精品 | 911精品美国片911久久久 | 麻花豆传媒mv在线观看 | 欧美精品被 | 天天操天操| 日本中文字幕网站 | 久久久久久久久久免费视频 | 日韩小视频 | 免费三级网| 黄色精品网站 | 日韩视频在线观看视频 | 日韩在线观看一区 | 波多野结衣电影一区二区三区 | 亚洲 综合 激情 | 日韩在线观看一区二区三区 | 98久9在线 | 免费 | 中文字幕成人在线观看 | 99久久久国产精品美女 | 免费在线| 久久久精品免费观看 | 亚洲成人免费 | 国产91探花| 亚洲专区中文字幕 | 97成人超碰 | 欧美日韩国产伦理 | 国产精品精品 | 亚洲黄网站 | 一区免费观看 | 91在线视频 | 97超碰中文 | 成人三级网址 | 亚洲区精品 | 国产精品美女久久久久久久久 | 亚洲最新视频在线播放 | 黄色综合 | 99精品免费久久久久久久久日本 | 98涩涩国产露脸精品国产网 | 欧美日韩精品网站 | 免费观看www视频 | 成人av免费在线播放 | 欧美综合在线视频 | 亚洲黄色app | 国产精品激情偷乱一区二区∴ | 亚洲 精品在线视频 | 国内精品久久久久久久影视麻豆 | 91精品视频观看 | 日韩在线免费看 | 97超视频在线观看 | 日韩在线视频网站 | 国产极品尤物在线 | 中文字幕在线播放日韩 | 黄色在线观看污 | 久久草草影视免费网 | 草久久精品 | 婷婷六月天在线 | 国产视频一区二区在线观看 | 91在线观看黄 | 国产精品久久99 | 亚洲电影网站 | 国产伦精品一区二区三区免费 | 国产成人亚洲在线观看 | 亚洲一区视频在线播放 | 亚洲精品黄网站 | 国产热re99久久6国产精品 | 国产成人免费 | 美女黄久久 | 日韩电影在线看 | 激情视频免费在线观看 | 日韩av五月天 | 欧美另类成人 | 久草精品电影 | a一片一级 | 成人av在线直播 | 国产一区二区三区高清播放 | 在线观看国产 | 一区二区三区免费在线观看视频 | 视频直播国产精品 | 超碰在线97免费 | 日韩在线不卡av | 久草久草久草久草 | 色婷婷色| 国产伦精品一区二区三区在线 | 91av视频免费观看 | 97人人艹 | 96精品高清视频在线观看软件特色 | 91精品一区国产高清在线gif | 九七人人干 | 亚洲精品免费在线 | 国产尤物在线视频 | 国产69精品久久久久久 | 日韩精品一区二区久久 | 伊人狠狠色| 午夜精品成人一区二区三区 | 色丁香婷婷 | 亚洲免费在线播放视频 | 天天操福利视频 | 亚洲黄色免费观看 | 西西www4444大胆在线 | 久久婷婷国产色一区二区三区 | 四虎影视精品成人 | 一级片黄色片网站 | 500部大龄熟乱视频使用方法 | 黄色大全免费观看 | 日韩av进入 | 97视频在线看 | 亚洲伊人色 | 69成人在线 | 成在线播放 | 国产视频一区在线 | 色婷婷啪啪免费在线电影观看 | 日韩亚洲精品电影 | 免费久久精品视频 | 亚洲成人资源网 | 欧美性超爽 | 欧美资源 | 99视频精品免费视频 | 亚洲伦理一区 | 午夜影视剧场 | 欧美aa在线 | 亚洲作爱视频 | 日韩av手机在线看 | 亚洲va综合va国产va中文 | 91九色丨porny丨丰满6 | 日韩国产高清在线 | 人人看97 | 欧美 日韩 国产 中文字幕 | 69国产盗摄一区二区三区五区 | 亚洲国产精品小视频 | 在线观看国产日韩欧美 | 天天操夜夜摸 | 夜添久久精品亚洲国产精品 | www.干| 最近中文字幕在线 | 国产精品人成电影在线观看 | 97成人精品 | 在线中文字幕视频 | 国产精品99久久久久久武松影视 | 免费国产在线精品 | 久久精品国产免费 | 免费视频一区二区 | 久久久人人爽 | 欧美精品乱码久久久久久按摩 | 国产成人精品一区二三区 | 九热在线 | 最新国产在线 | 在线免费观看视频一区二区三区 | 欧美色图一区 | 国产精品久久久久久久久久尿 | 久草在线国产 | 天天色中文 | 黄色三级免费片 | 国产va在线观看免费 | 日韩大片免费在线观看 | 色婷婷中文 | 色婷婷国产精品 | 精品成人在线 | 日韩中文字幕国产 | 蜜臀av性久久久久蜜臀aⅴ涩爱 | 98久9在线 | 免费 | japanese黑人亚洲人4k | 在线观看av免费 | 91 在线视频 | 亚洲闷骚少妇在线观看网站 | 午夜av片 | 中文字幕乱码在线播放 | 青草视频在线 | 91精品久久久久久久99蜜桃 | 毛片视频电影 | 成人网在线免费视频 | 免费高清看电视网站 | 黄a在线看 | 在线观看日韩免费视频 | 欧美日韩亚洲在线观看 | 久久女同性恋中文字幕 | 欧美极品xxxxx | www黄免费| 黄色在线观看www | 亚洲一区免费在线 | 久草视频在线观 | 亚洲激情校园春色 | 日韩av免费观看网站 | 激情视频91| 久久草精品 | 狠狠色丁香 | 成人国产精品一区二区 | 免费看片黄色 | 最新影院 | www五月天婷婷 | 国产精品久久久久久久av电影 | 日韩欧美观看 | 色综合天天综合在线视频 | 精品美女在线观看 | 香蕉97视频观看在线观看 | 91福利视频网站 | 欧美永久视频 | 久久视频免费看 | 天天操天天操天天操天天操 | 日本精品视频一区二区 | 色综合久久久网 | 一区二区三区四区久久 | 九九热久久免费视频 | 久久久久久久久精 | 草久久av| 五月香视频在线观看 | 亚洲天堂网视频在线观看 | 国产精品对白一区二区三区 | av片一区 | 久久免费a| 国产三级久久久 | 亚洲高清免费在线 | 日本最新高清不卡中文字幕 | 天天操天天色天天射 | 欧美日韩午夜爽爽 | 999成人网 | 久草资源免费 | 精品久久久久久久久久久久久久久久 | 成人99免费视频 | 97视频在线观看成人 | 亚洲不卡av一区二区三区 | 久免费| 国产亚洲资源 | 久久亚洲私人国产精品 | 开心色婷婷| 色夜影院| 免费看片黄色 | 青青视频一区 | 九色精品免费永久在线 | 97成人在线观看 | 丰满少妇对白在线偷拍 | www.97色.com | 精品一区二区免费 | 在线免费观看欧美日韩 | 国产黄色片免费观看 | 国产福利精品视频 | 免费看的黄色小视频 | 午夜精品久久久久久中宇69 | 免费久久精品视频 | 国产视频18 | 久久艹99 | 国产69久久久| 日本久久精品 | 激情久久久 | 日韩午夜在线播放 | 欧美日韩天堂 | 久久99精品久久久久蜜臀 | 亚洲成a人片在线www | 日本久久片 | 亚州精品国产 | 久艹视频在线观看 | 欧美精品黑人性xxxx | 国产黄a三级三级三级三级三级 | 亚洲日本成人 | 日韩美女免费线视频 | 91精品国产三级a在线观看 | 欧美日bb| 91亚洲精品久久久久图片蜜桃 | 日韩大片在线看 | 一级α片| 久久免费在线观看 | 久草国产视频 | 涩涩网站免费 | 亚洲人成影院在线 | 人人爽人人爽人人爽人人爽 | 国产精品久久久久影院日本 | 午夜久久影视 | 日日夜夜艹 | 99久久精品视频免费 | 色综合色综合色综合 | 992tv又爽又黄的免费视频 | 视频直播国产精品 | 成年人免费在线观看网站 | 国产成人三级在线观看 | 操老逼免费视频 | 国产精品久久久久久久久毛片 | 国产精品密入口果冻 | 久久精品99国产国产 | 亚洲欧美在线视频免费 | 久久综合久久伊人 | 国产高清视频免费在线观看 | 国产精品成人自产拍在线观看 | 99在线免费观看视频 | 亚洲特级毛片 | 亚洲国产人午在线一二区 | 日韩精品一区二区三区免费观看视频 | 国产视频一二三 | 日韩精品aaa | 日韩v欧美v日本v亚洲v国产v | 日韩精品最新在线观看 | 国产精品1000| 99精品免费网 | 成人在线一区二区三区 | 美女网站一区 | 日韩精品在线观看视频 | 天天射天天干天天 | 97超碰免费在线观看 | 日本天天色 | 日韩影视在线观看 | 一区二区三区电影大全 | 欧美一级特黄aaaaaa大片在线观看 | 国产色婷婷精品综合在线手机播放 | 久久久久国产精品免费 | 玖玖999| 国内视频在线 | 99久久精品国产亚洲 | 亚洲精品18日本一区app | 国产精品一区二区在线观看免费 | 日韩午夜网站 | 特级毛片在线免费观看 | 亚洲涩涩网 | 久久综合久久综合九色 | 黄色小说在线免费观看 | 日韩精品一区二区三区在线播放 | 亚州国产精品久久久 | 色综合久久久久综合体桃花网 | 免费精品视频在线观看 | 日日爽日日操 | 中国黄色一级大片 | 在线综合 亚洲 欧美在线视频 | 成人av影视在线 | 久久99中文字幕 | 999久久国产 | 久精品在线观看 | 美女视频黄的免费的 | 国产视频网站在线观看 | 日韩欧美一区二区三区在线 | 狠狠网 | 久久精品艹 | 中文字幕 二区 | 91成人短视频在线观看 | 国产一区视频免费在线观看 | 国内精品久久久久久久久久久 | 国产精品永久 | 国产成人精品亚洲日本在线观看 | 在线观看91久久久久久 | 色亚洲激情 | 美女精品国产 | 99久久国产免费,99久久国产免费大片 | 亚洲国产黄色片 | 97精品伊人 | 免费看黄的视频 | 99视频在线 | 一区在线观看 | 日韩在线短视频 | 国产午夜在线观看视频 | www.婷婷色 | 中文字幕在线看视频 | 久久久96 | 久久精品国产亚洲精品2020 | 久久婷婷一区二区三区 | 国产在线日本 | 亚洲中字幕 | 亚洲一区 av | 在线电影av | av电影免费在线播放 | 狠狠色丁香婷婷综合久小说久 | 国产精品 国内视频 | 日本九九视频 | 国产精品色在线 | 友田真希x88av | 五月天网站在线 | 国产精品6 | 国产一区在线免费 | 麻豆一区二区 | 久久国产高清 | 成人午夜电影网站 | 中文字幕在线看视频国产 | 亚洲精品久久久久中文字幕二区 | 91av美女| 成人av观看| 欧美精品久久久久久久久久久 | 亚洲黄色在线观看 | www.99久久.com | 正在播放五月婷婷狠狠干 | 久久综合九色综合欧美就去吻 | 国产精品久久久久久久久搜平片 | 色香蕉在线 | 91久久国产露脸精品国产闺蜜 | 久久精彩免费视频 | 久久久久久中文字幕 | 天天躁日日躁狠狠 | 国产一级黄大片 | 啪啪凸凸 | 久久久在线免费观看 | 天天操夜夜操夜夜操 | 精品国产乱码一区二 | 五月开心激情网 | 亚洲一级黄色大片 | 天天天干天天射天天天操 | 成人久久电影 | 国产亚洲精品久久久久久久久久久久 | 国产高清黄 | 国产美女视频免费观看的网站 | 欧美va天堂va视频va在线 | 综合天堂av久久久久久久 | 9色在线视频| 久久一区二区三区超碰国产精品 | 在线一级片| 午夜精品久久久久久久99婷婷 | 在线免费观看麻豆视频 | 国产一区二区三区免费视频 | 中文字幕久久精品亚洲乱码 | 99色| 日韩精品久久一区二区 | 欧美久久久久久久久久久久久 | 伊甸园av在线 | 天堂va在线高清一区 | 亚洲在线视频免费观看 | 免费一级特黄录像 | 久久国产高清 | 成片免费| 天天激情综合网 | 成人福利在线观看 | 91亚洲狠狠婷婷综合久久久 | av免费播放| 在线免费成人 | 狠狠狠综合 | 国产原创av片 | 日韩欧美视频一区二区三区 | 天天综合导航 | 在线日韩精品视频 | 天天干夜夜想 | 又黄又爽又刺激视频 | 免费网站在线 | 亚洲精品国偷自产在线99热 | 深爱激情站 | 国产精品综合在线 | 色播激情五月 | 99爱在线 | 中文字幕一区二区三区在线观看 | 天天色天天| 久章草在线 | 一区二区三区播放 | 亚洲精品国产综合久久 | 69中文字幕| 超碰在线观看av | 人人舔人人 | 99热亚洲精品 | 亚洲国产网站 | 精品日韩视频 | 日韩网站在线 | 国产亚洲精品久久久久久久久久久久 | 国产原厂视频在线观看 | 女人18精品一区二区三区 | 五月婷婷六月丁香 | 国产亚洲综合在线 | 国产亚洲精品久久19p | 亚洲精品国产综合99久久夜夜嗨 | 国色天香第二季 | 2019精品手机国产品在线 | 久久久免费观看 | 欧美韩国日本在线 | 九九热免费视频在线观看 | 国产不卡免费 | 亚洲国产手机在线 | aⅴ视频在线 | 日日干美女 | 欧美在线观看小视频 | 久久少妇免费视频 | 久久久久久久久免费 | 日韩在线视频免费观看 | 亚洲高清国产视频 | 欧美精品久久久久久久久久丰满 | 久久国产片 | 天天爱天天 | 日韩高清在线观看 | 激情综合五月天 | 深夜免费网站 | 亚洲国产影院av久久久久 |