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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

protect 继承_C++ protected继承和private继承是不是没用的废物?

發(fā)布時間:2024/10/14 c/c++ 105 豆豆
生活随笔 收集整理的這篇文章主要介紹了 protect 继承_C++ protected继承和private继承是不是没用的废物? 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

〇、引言

既然你所統(tǒng)計的項目里出現(xiàn)了 private 繼承和 protected 繼承,這不正說明確實有他們的用武之地嗎?

一、現(xiàn)有項目分析(以 STL 的三大實現(xiàn)為例)

讓我們來康康 C++ 代碼的標桿——STL 的源碼,是怎么做的:

先來康 GCC 自帶的 libstdc++ 的實現(xiàn):

vector:

list:

deque:

forward_list:

unordered_(multi)set/map 的底層 Hashtable:

tuple 雖然是直接繼承自 Tuple_impl:

但 Tuple_impl 是用到了 private 繼承展開各個字段的:

pair:

mutex:

functional:

bitset:

再來康 Clang 自帶的實現(xiàn),libc++ 的:

vector:

list:

string:

tuple 底層用于空基類壓縮優(yōu)化的:

其他的類似,我就不繼續(xù)展開了,否則你這月流量不夠了

最后康 MSVC 的:

MSVC STL 雖然幾個容器模板沒有用到繼承,但至少 tuple 和 varient 還是挺給我面子的:

tuple:

varient:

看吧,protected private 繼承用的多普遍,更多的我還沒列舉完~

二、protected private 繼承的實際運用場景考察

1)很多人說你用 protected private 繼承倒不如用組合,把原本的基類作為一個私有或保護字段。這種論調(diào)是很沒有道理的。很多時候,繼承是替代不了的。比如 C++ 里有一種非常常見的優(yōu)化技術(shù)叫:

空基類壓縮優(yōu)化技術(shù)

他就只能用繼承去實現(xiàn);而使用組合時,就沒有壓縮的效果。

考察下面代碼,這是對 vector 壓縮 allocator 字段原理的簡化實現(xiàn):

class MyAllocator

{

};

template

class MyVector: public Allocator

{

};

void use_allocator(const MyAllocator & alloc)

{

}

int main()

{

MyVector vec;

use_allocator(vec);

}

如果 vector 直接 public 繼承自 allocator,根據(jù)類型兼容原則,在指針和引用語義下,子類同時也可被視作是父類。那 vector 也能被當做 allocator 用了?use_allocator 明明想使用一個分配器,結(jié)果居然能接收一個 vector 作為參數(shù)?那太恐怖了,語義亂了。

而改成 private 或 protected 繼承就不會了:

class MyAllocator

{

};

template

class MyVector: protected Allocator

{

};

void use_allocator(const MyAllocator & alloc)

{

}

int main()

{

MyVector vec;

use_allocator(vec);

}

這時候編譯器會報:

錯誤:‘MyAllocator’是‘MyVector’不可訪問的基類

這就阻止上面的情況發(fā)生了。

事實上,整個比較完善的壓縮代碼是如下的(雖然還是非常的簡化了,這里只是說明原理,整個完整的實現(xiàn)代碼會非常長):

#include

class MyAllocator

{

};

template

std::is_empty_v && !std::is_final_v>

class _MyVectorAllocatorCompressedHelper;

template

class _MyVectorAllocatorCompressedHelper:

protected std::remove_cv_t

{

};

template

class _MyVectorAllocatorCompressedHelper

{

Allocator alloc;

};

template

class MyVector: protected _MyVectorAllocatorCompressedHelper

{

};

void use_allocator(const MyAllocator & alloc)

{

}

int main()

{

MyVector vec;

use_allocator(vec);

}

你不要小看上面這個優(yōu)化技巧,你能用上 3 * sizeof(void*) 字節(jié)大小的 std::vector 就得感謝這個技術(shù)。

class MyAllocator

{

};

template

class MyVector

{

T * M_head;

T * M_end;

T * M_capacity;

Allocator alloc;

};

樸素的實現(xiàn)方式里,vector 至少要占 3 個指針大小的空間 + 一個空基類占的一個字節(jié)空間,64 位底下就是 3 * 8 + 1 = 25 個字節(jié)的大小,再內(nèi)存對齊一下就得要 32 個字節(jié)的大小。但是開了空基類壓縮優(yōu)化以后,只要 24 字節(jié)的大小就夠了。(有人說,你不加 allocator 字段不就完了么?不可以!因為從 C++11 開始,Allocator 是允許有狀態(tài)的,而 gcc-9 及以前所帶的 libstdc++ 都尚未支持帶狀態(tài)的 Allocator)

類似的,libstdc++ (gcc-10 以后) 和 libc++ 的實現(xiàn)中,各大容器的 Allocator 字段都是用上面這個原理壓縮的。

還有,(multi)set/map 的比較字段,如果是像 std::less 這樣的空類,那么就可以壓縮掉,如果是函數(shù)指針,就給他留個空間:

#include #include

using namespace std;

template

class MyAllocator: public std::allocator

{

char c;

}; // 故意加一個字段使得 MyAllocator 不是空類

int main()

{

cout << sizeof(void*) << endl;

cout << sizeof(MyAllocator) << endl;

cout << sizeof(std::set >) << endl;

cout << sizeof(std::set) << endl;

cout << sizeof(std::set >) << endl;

}https://gcc.godbolt.org/z/r7orzK?gcc.godbolt.org

clang11 + libc++ 底下的輸出分別是:8

1

24

32

40

可見壓縮效果是非常明顯的。

這樣的例子比比皆是:

unordered_(multi)set/map 的 Hash 字段,equal_to 字段,也可以用這個方法壓縮。

還有 tuple 對空類字段的壓縮,也采用了這個手法。(和你手寫 struct 略有不同,至少 libstdc++-10 下的 tuple 是有壓縮掉空類字段的技術(shù)的)

2)既然談到了 tuple,我們就來考察一下 tuple。

這次我不親手寫代碼了,就百度一下,隨手找找一篇博客現(xiàn)場打臉好啦。

百度搜“std::tuple 實現(xiàn)”,好,第一篇博客,就屬你排名最高,我就來打你臉了。

打開一看:

好的,確實是用常規(guī)思路來實現(xiàn) tuple 的,即:取到第一個模板參數(shù)后,作為一個數(shù)據(jù)成員,然后遞歸繼承 tuple。 STL 也是這么搞的。這份實現(xiàn)沒有用到空類成員壓縮優(yōu)化,不過沒關(guān)系,反正這個優(yōu)化也不是強制的,而且我現(xiàn)在主要想打臉的是他的 public 繼承。

下面,我把他的代碼原封不動地照抄過來:

// tuple原始版本template

class tuple;

// tuple無參template <>

class tuple <>

{

public:

tuple() {}

virtual ~tuple() {}

};

// tuple的帶參偏特化template

class tuple <__this_type __args_type ...> : public tuple<__args_type ...>

{

public:

tuple(__this_type val, __args_type ... params) : tuple<__args_type ...>(params ...)

{

value_ = val;

}

virtual ~tuple() {}

__this_type get_value()

{

return value_;

}

public:

// 每一層繼承的節(jié)點參數(shù)剝離// 將每一節(jié)點內(nèi)容存儲至其中__this_type value_;

};

然后測試代碼:

void use_tuple(const ::tuple & tuple)

{

}

int main()

{

::tuple t(0, 1.0, 'a');

use_tuple(t);

}

編譯通過。

看到?jīng)]有,按照類型兼容原則,tuple 是 tuple 的子類,那么就可以當父類去用。握草,本來期待接收二元組參數(shù)的函數(shù) use_tuple,接收到的居然是一個三元組。能這樣搞你不慌嗎?這么低質(zhì)量的庫,你在業(yè)務(wù)代碼里敢用嗎?

然后我看了百度搜索結(jié)果的第二篇博客,一樣辣?,也是用的 public 繼承。而且這位作者大言不慚地說:單繼承版本確實比多繼承版本美得多了

所以這位作者不知道空基類優(yōu)化呀。

第三篇博客用的 private 繼承,可惜文中并沒有講解為什么要用 private 繼承。

第四篇只是講解 tuple 用法的,沒有談實現(xiàn)原理,跳過。

第五篇用了 private 繼承,也講到了空基類優(yōu)化,非常贊。

。。。

3)下面再談?wù)?public 繼承下,類型兼容原則的一處大坑:

考察下面代碼:

#include

class Base

{

private:

int * resource;

public:

Base() : resource(new int[10])

{

}

virtual ~Base()

{

delete[] resource;

}

Base& operator=(Base && b)

{

delete[] resource;

resource = b.resource;

b.resource = nullptr;

std::cout << "move b" << std::endl;

return *this;

}

};

class Derived1: public Base

{

private:

double * resource2;

public:

Derived1() : resource2(new double[10])

{

}

virtual ~Derived1()

{

delete[] resource2;

}

Derived1& operator=(Derived1 && d)

{

delete[] resource2;

resource2 = d.resource2;

d.resource2 = nullptr;

std::cout << "move d" << std::endl;

return *this;

}

};

int main()

{

Base b;

Derived1 d1;

b = std::move(d1);

}

輸出:move b

如果你有足夠的安全意識的話,會意識到:

d1 所持有的資源只被移動了一半!b 只承接了 d1 中繼承自 Base 的那部分。而 d1 中 Derived 類所特有的資源 resource2,依然還留在 d1 里!

如果你沒意識到資源只被移動一半的話,這將會是大坑~~~就算你后面不會復(fù)用已經(jīng)被 move 了的 d1 (而且 C++ 本來就不建議復(fù)用被 move 過的對象),你的析構(gòu)函數(shù)要是沒考慮到這種情況,是會 BOOM 的。

三、分析與結(jié)論

回顧第二節(jié)中我們所考察的三種場景,我們可以看到,類型兼容原則具有不可忽視的缺點——在有些語境下,把子類當父類用完全可以;但是有些語境下把子類當父類用,是會與我們的預(yù)期不合的。而 protected private 繼承使得基類成為不可訪問的基類,就能在不當使用時,產(chǎn)生編譯錯誤,使得問題得以暴露出來,不至于藏著掖著,從而成為隱患。(在編程中,出現(xiàn)問題總比沒有問題要好,相信這是各位同仁的共識)

再有,空基類優(yōu)化的需求,使得必須要用繼承來實現(xiàn)他——組合的方式不能起到壓縮效果,而 public 繼承又會產(chǎn)生奇怪的語義 (比如 2.1 中的例子,vector 居然也能是 allocator),所以就決定了:

protected private 繼承絕不是沒有用武之地

但是,為什么 Java 等后來的語言可以砍掉 protected private,只留下一種繼承方式?

因為 Java 所引入的 package 這個語法機制太牛逼了,他允許你規(guī)定 package 中的哪些類是可以對外公開的,即你可以在類前面加 public, protected, private 或者就用默認的可見性修飾。這樣,不把基類暴露出去,外面的業(yè)務(wù)代碼不能訪問到基類,于是問題就有所緩解了。

與其對比,C++ 的 namespace 做的就非常原始啊,只有一個解決命名沖突的功能,你不能在 namespace 里設(shè)置類的可見性。(筆者有精神潔癖,這個功能的缺失,令我在處理不該暴露的基類,比如 XXX_impl,XXX_base,XXX_detail 時,會比較難受)

作為一名模板元黑魔法編程低手,我明確給出結(jié)論:private protected 繼承在業(yè)務(wù)代碼里用的非常少,但是在模板庫里就很有用。

你所引用的數(shù)據(jù)就是非常好的對比。這里面只有 folly boost 是模板庫項目,其他項目都屬于業(yè)務(wù)類。所以 folly boost 里用到 private protected 繼承的比例明顯就比其他項目高。而且我上面給你列舉的三家 STL 的實現(xiàn)里,也大量地出現(xiàn)了他們,這也是很好的佐證。

之所以在模板庫中用的多,而在業(yè)務(wù)代碼里用的比較少,我想原因有以下幾點:

1)模板庫要想好用、通用、用的安全,必須要謹慎地考慮到所有場景 (所以庫開發(fā)對編程人員的要求是比對從事一般開發(fā)人員的要求要高的,問題要考慮的非常全面)。我上面論述的那些例子,就是離開 protected private 繼承后,不好用、不安全的。

2)業(yè)務(wù)代碼在使用繼承時,往往只是利用一下多態(tài)性,更確切地說,就是只要一個父類表示,但是卻能產(chǎn)生不同的效果。

比如經(jīng)典的不能在經(jīng)典的例子:

Animal * animal = new Dog();

animal->shout();

業(yè)務(wù)代碼基本上都是這樣需要類型兼容的多,而對通用性考慮的要少——只要我的這個具體的需求能解決、不出問題就行了,其他的考慮的沒模板庫多。

3)純粹是大家都懶,不想考慮那么多業(yè)務(wù)以外的問題就是了。public 繼承改成 private 繼承后,很多能訪問的成員訪問不到了,還得寫一層轉(zhuǎn)發(fā),麻煩事。而且很多人甚至都不知道有“用 using 可以修改成員可見性”這種很方便的語法。https://en.cppreference.com/w/cpp/language/using_declaration#In_class_definition?en.cppreference.combtw. 說句題外話,很多人吐槽 C++ 特性多,過于復(fù)雜。實際上這些人平常只是在做業(yè)務(wù)開發(fā),不知道這么多特性其實都是給庫作者用的。其實寫業(yè)務(wù)代碼 (包括我在寫業(yè)務(wù)代碼時) 都是用不到多少高級特性的,很多語法也是很冷門的 (protected private 繼承就是),不學(xué)都可以的。但是對于模板庫的開發(fā)來說,化用毛子的一句話——

C++ 特性雖多,但沒有一個是多余的Using-declaration - cppreference.combtw. 說句題外話,很多人吐槽 C++ 特性多,過于復(fù)雜。實際上這些人平常只是在做業(yè)務(wù)開發(fā),不知道這么多特性其實都是給庫作者用的。其實寫業(yè)務(wù)代碼 (包括我在寫業(yè)務(wù)代碼時) 都是用不到多少高級特性的,很多語法也是很冷門的 (protected private 繼承就是),不學(xué)都可以的。但是對于模板庫的開發(fā)來說,化用毛子的一句話——

C++ 特性雖多,但沒有一個是多余的

四、結(jié)尾語

Bjarne 當年是在大名鼎鼎的貝爾實驗室開始的編程語言革命探索,不但直接成果——C++ 語言一躍成為應(yīng)用十分廣泛的語言,一直到今天流行了四十多年;而且不少的設(shè)計也深遠地影響了后來的若干門非常流行的編程語言——Java C# D Rust 等,甚至就連老祖宗 C 都回抄了 C++ 的不少特性。

作為最初的一批嘗試探索面向?qū)ο笏枷氲母锩?#xff0c;C++ 本來就沒有后輩語言那樣優(yōu)渥的歷史條件。偶有一兩個點未能預(yù)見后世的發(fā)展趨勢,也實屬正常。再說了,private protected 繼承只是實踐中運用的相對較少而已,但他們絕不是像 vector, auto_ptr 這樣的實在是非常拉垮的設(shè)計。他們在模板編程中十分有用!

最后,我實在是看不下去題主你的自負和提問的口氣,覺得自己的眼光、水平甚超一眾計算機先輩當年。如果你堅持這么沖的口氣,那我也可以回敬你一句:

是你沒意識到他們的用處,你不會用才是 fw

總結(jié)

以上是生活随笔為你收集整理的protect 继承_C++ protected继承和private继承是不是没用的废物?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

国产精品门事件 | 日日夜夜av | 69亚洲精品 | 久久有精品 | 欧美日比视频 | 九七视频在线观看 | 天天色宗合 | 欧美热久久 | 中文字幕 国产 一区 | 免费97视频 | 亚洲另类xxxx | 色综合久久综合中文综合网 | 久久中文字幕导航 | 香蕉网站在线观看 | 国产专区精品 | 久久精品美女视频网站 | 夜夜躁天天躁很躁波 | 久久蜜臀一区二区三区av | 国产午夜精品在线 | 欧美在线观看视频一区二区 | 一区二区 精品 | 日韩理论在线观看 | 国产美女精品在线 | 久久高清 | 一本大道久久精品懂色aⅴ 五月婷社区 | 啪啪免费试看 | 亚洲伊人av | 国产精品美女久久久久久 | 亚洲激情在线观看 | 不卡中文字幕在线 | 国产精品精品国产婷婷这里av | 国内精品久久久久久久久久清纯 | 亚洲精品午夜视频 | 成年美女黄网站色大片免费看 | 久久久久 免费视频 | 精品视频免费播放 | 欧美日韩国产综合网 | 国产精品扒开做爽爽的视频 | 狠狠操电影网 | 国产69精品久久app免费版 | 亚洲国产三级在线观看 | 久久综合亚洲鲁鲁五月久久 | 亚洲免费a| 亚洲免费在线看 | 在线观看av麻豆 | 国产一区网址 | 婷婷激情综合 | 欧美黑吊大战白妞欧美 | 国产精品国产三级国产不产一地 | www.色在线| 久草精品免费 | 日韩欧美视频免费看 | 国产香蕉久久 | 国产在线观看你懂得 | 国产男女爽爽爽免费视频 | 色视频网站在线观看一=区 a视频免费在线观看 | 高清视频一区二区三区 | 91福利视频一区 | 免费看片网址 | 色视频成人在线观看免 | 日韩欧美在线观看一区二区 | 成人一级影视 | 国产乱码精品一区二区蜜臀 | 欧美一区二区三区免费看 | 午夜黄色大片 | av+在线播放在线播放 | 不卡的一区二区三区 | 国产精品久久久久一区二区国产 | 久久免费福利视频 | 97人人精品 | 96精品视频| 免费男女羞羞的视频网站中文字幕 | 亚洲美女在线国产 | 91九色porny蝌蚪主页 | 国产一级免费在线观看 | 国产精品理论片在线播放 | 在线性视频日韩欧美 | 久久手机免费视频 | 欧美性生交大片免网 | 色吊丝在线永久观看最新版本 | 在线视频18在线视频4k | 91免费高清 | 国产97色| 97偷拍视频| 色综合久久五月天 | 韩国一区二区av | 国产精品mv | 成年人免费av | 国产不卡视频在线 | 久久伊人免费视频 | 一区二区三区在线观看 | 久久久久免费网站 | 视频三区在线 | 伊人导航| 奇米网8888 | 99久热在线精品视频观看 | 国产精品一区二区久久 | 在线观看一区二区精品 | 91超碰免费在线 | 亚洲国产欧美在线看片xxoo | 色综合久久久 | 国产69精品久久久久99 | 一区二区视 | 五月宗合网 | 亚洲欧美国产视频 | 四虎视频 | 中文日韩在线视频 | 日韩精品网址 | 国产高清中文字幕 | 黄色一级大片在线观看 | 久久久久久在线观看 | 在线播放av网址 | 婷婷伊人综合 | 亚洲视频 视频在线 | 欧美一区二区免费在线观看 | 黄色亚洲片 | 2023亚洲精品国偷拍自产在线 | 91av视频导航 | 91视频 - 114av| 99精品在线视频观看 | 国产视频日韩视频欧美视频 | 麻豆免费看片 | 99精品视频精品精品视频 | 国产成人综合在线观看 | 青青河边草免费观看完整版高清 | 91精品国产综合久久婷婷香蕉 | 18岁免费看片 | 四虎影视成人精品 | 999久久久久久 | 国产免费二区 | 久久玖| 国产福利一区二区在线 | 99在线免费观看 | 中字幕视频在线永久在线观看免费 | 国产玖玖精品视频 | 国产又粗又猛又黄 | 日韩视频在线观看视频 | 国产精品video爽爽爽爽 | 韩国一区二区三区在线观看 | 极品美女被弄高潮视频网站 | 婷婷国产v亚洲v欧美久久 | 韩国av电影在线观看 | 免费视频你懂得 | 国内视频在线观看 | 久久亚洲精品国产亚洲老地址 | 成人午夜免费福利 | 干av在线| 日本不卡视频 | 久久精品一区二区三区视频 | 久久av免费观看 | 国产一区二区三区网站 | 国内综合精品午夜久久资源 | 亚洲免费av在线 | 91桃色在线免费观看 | 国产伦理一区二区三区 | 在线播放91 | 欧美乱码精品一区 | 日韩精品视频在线观看免费 | 国产精品av一区二区 | 国产精品99免费看 | 久草香蕉在线视频 | 国产成人高清av | 91精品国产高清自在线观看 | 91爱爱网址| 在线观看视频一区二区三区 | 国产一级免费电影 | 精品久久在线 | 日韩精品视频第一页 | 色婷婷免费| 天天爽人人爽 | 精品视频免费久久久看 | 久久艹欧美 | 又色又爽又黄 | 久久男人影院 | 欧美色伊人| 国产视频精品免费播放 | 黄色一级大片在线免费看产 | 国产在线观看网站 | 天天射天天艹 | 四虎免费av | 精品在线99 | 丁香狠狠 | 天堂va在线高清一区 | 欧美性生活免费 | 久久国产精品99久久人人澡 | 久久女同性恋中文字幕 | 天天色天天操综合 | 亚洲精品在线国产 | 婷婷在线视频 | 色99视频 | 97超碰伊人 | 国产一区二区在线视频观看 | 国产精品美女久久久久aⅴ 干干夜夜 | 国产一区二区久久久久 | 99c视频高清免费观看 | 国产精品视频在线看 | 欧美激情视频一区二区三区免费 | 日精品 | 66av99精品福利视频在线 | 国产成人99av超碰超爽 | 人人射 | 91精品视频导航 | 91香蕉嫩草 | 欧美日韩视频精品 | 韩国精品在线 | 香蕉一区 | 黄色www免费 | 一区二区精品视频 | 久久精国产 | 九草视频在线 | 亚洲男人天堂2018 | www.99av | 黄色在线网站噜噜噜 | 99色视频在线 | 亚洲精品午夜久久久久久久久久久 | 久久公开免费视频 | 久久天天拍 | 91亚洲精品久久久久图片蜜桃 | 国产精品丝袜久久久久久久不卡 | 中文字幕在线看视频国产 | 在线亚洲播放 | 99精品视频免费看 | 久久久久久蜜av免费网站 | 亚洲天堂va | 国产精品毛片一区视频播不卡 | 伊甸园av在线 | 久久久久99精品成人片三人毛片 | 涩av在线 | 日韩二区三区在线观看 | 日韩一区二区三区免费视频 | 成人黄色中文字幕 | 亚洲色图美腿丝袜 | 欧美日韩精品在线一区二区 | 91精品国产麻豆国产自产影视 | 丁香六月婷婷 | 欧美精品久久久久久久久久久 | 亚洲国产成人精品久久 | 又黄又刺激的视频 | 日本高清中文字幕有码在线 | 日韩不卡高清 | 国产精品久久艹 | 在线免费中文字幕 | 色婷婷av一区 | 97视频在线免费播放 | 久久精品网站免费观看 | 一本一道波多野毛片中文在线 | 黄色资源在线观看 | 在线小视频 | 日韩免费在线观看网站 | 在线观看中文字幕视频 | 国产区免费在线 | 中文在线a∨在线 | 亚洲永久在线 | 国产成人区 | 伊人久久av| 九草在线视频 | 国产精品岛国久久久久久久久红粉 | 国产美女视频黄a视频免费 久久综合九色欧美综合狠狠 | a天堂最新版中文在线地址 久久99久久精品国产 | 婷婷六月综合亚洲 | av.com在线| 综合色天天 | 高清精品久久 | 九九精品久久久 | 久久性生活片 | 三级av在线| 伊人天天狠天天添日日拍 | 欧美日韩视频在线播放 | 中文理论片 | 日韩三级在线观看 | 黄网在线免费观看 | 国产中的精品av小宝探花 | 8x8x在线观看视频 | 在线视频一二三 | 国产亚洲精品美女久久 | 国产精品黑丝在线观看 | 人人狠狠 | 午夜久久视频 | 亚洲乱码久久 | 在线免费观看视频一区 | 91视视频在线直接观看在线看网页在线看 | 伊人成人精品 | 九九视频精品在线 | 99综合电影在线视频 | 精品在线你懂的 | 精品国产一区二区三区久久久蜜月 | www日 | 91日韩精品一区 | 国产分类视频 | 久久久18 | 精品免费在线视频 | 在线播放一区二区三区 | 高清精品在线 | 久久97久久| 中文字幕在线观看第二页 | 亚洲高清av | 日韩色综合网 | 国产福利91精品一区 | 国产一区欧美在线 | 国产精品嫩草在线 | 日韩三级av | 国产中文在线视频 | 久久精品亚洲精品国产欧美 | 一区在线免费观看 | 视频在线一区二区三区 | 操高跟美女 | 中文在线8新资源库 | 永久免费的啪啪网站免费观看浪潮 | 毛片视频网址 | 午夜电影久久久 | 午夜av色| 亚洲综合色网站 | 欧美aⅴ在线观看 | 国模精品一区二区三区 | 色综合欧洲 | 日韩精品免费在线 | 中文字幕在线视频一区 | 九九免费精品视频 | 五月婷婷视频在线 | 国产精品久久久久久吹潮天美传媒 | 99亚洲国产| www.久久99 | 黄色软件在线观看 | 国产最新网站 | 美女一级毛片视频 | 三级小视频在线观看 | 成人蜜桃网 | 美女网站免费福利视频 | 嫩草伊人久久精品少妇av | 国产99久久久久久免费看 | 国产精品系列在线观看 | 久久久久国产一区二区 | 国产亚洲亚洲 | 色瓜 | 婷婷丁香七月 | 日日夜夜免费精品 | 日韩欧美精品在线观看 | bbbb操bbbb| 亚洲欧美在线综合 | av网站在线免费观看 | 精品久久综合 | 视频91| 亚洲最新视频在线播放 | 18国产精品福利片久久婷 | 狠狠ri| 天天操天天摸天天射 | 欧美日韩在线视频一区 | 日韩福利在线观看 | 一级a毛片高清视频 | 成人黄色大片在线免费观看 | 国产手机免费视频 | 成人香蕉视频 | 激情五月婷婷丁香 | 亚洲日本一区二区在线 | 国产精品高| 国产成人精品久久二区二区 | 中文字幕在线电影 | 999成人国产 | 在线三级av| 黄色精品一区二区 | 丁香电影小说免费视频观看 | 色在线中文字幕 | 久久在线精品 | 亚洲资源网 | 97国产在线 | 婷婷激情五月 | 婷婷久久五月天 | 91亚洲永久精品 | 久久亚洲欧美日韩精品专区 | 97超碰成人在线 | 亚洲综合成人av | 亚洲韩国一区二区三区 | 激情综合网色播五月 | 国产视频精品视频 | 日韩区欧美久久久无人区 | 国产一区私人高清影院 | 在线视频18在线视频4k | 一区二区三区在线免费播放 | 天天干.com| 99视频在线看 | 日韩天堂在线观看 | 国产成人a亚洲精品 | 韩日精品在线观看 | 国产成人免费在线 | 最近2019年日本中文免费字幕 | 久久精品视频中文字幕 | 久热香蕉视频 | 欧美一级片免费在线观看 | 欧美一级大片在线观看 | 国产91免费在线观看 | 99热最新地址| 狠狠五月天 | 在线小视频你懂的 | 一本一本久久a久久 | 欧美成人在线网站 | 日韩精品一区二区三区高清免费 | 日日碰夜夜爽 | 中文字幕av免费在线观看 | 亚洲精品国精品久久99热 | 久久免费视频网 | av中文字幕不卡 | 国产96视频| 久久高清免费视频 | 国产亚洲精品久久久久久久久久久久 | 久久久免费观看完整版 | 日韩成人精品一区二区 | 欧美一级免费在线 | 国产一区视频在线观看免费 | 亚洲国产mv | 超碰人人99| 亚洲国产免费看 | 国产一级大片免费看 | 中文字幕乱在线伦视频中文字幕乱码在线 | 热久久免费视频精品 | 色婷婷综合久久久 | 在线黄色观看 | 日韩免费视频在线观看 | 久久免费视频在线观看6 | 在线观看你懂的网址 | 成人va在线观看 | 久久99国产视频 | 18国产精品白浆在线观看免费 | 日韩三级视频在线观看 | 久久国产精品免费视频 | 久久精品视频网址 | a在线v| 亚洲国产中文字幕在线 | 久久99国产一区二区三区 | 免费男女羞羞的视频网站中文字幕 | 国产精品久久久影视 | a v在线观看 | 色狠狠一区二区 | 成年人在线观看免费视频 | 六月天综合网 | 97在线观看免费高清 | 亚洲一区久久久 | 超碰在97 | 成人av一区二区在线观看 | 97超碰免费在线 | 亚洲精品美女在线观看播放 | 国产成人性色生活片 | 福利精品在线 | 菠萝菠萝在线精品视频 | 中文字幕一区二区三 | 香蕉视频一级 | 99热在线国产 | 四虎在线永久免费观看 | 国产精品大全 | 精品国内自产拍在线观看视频 | 日韩精品91偷拍在线观看 | 午夜电影中文字幕 | 精品国产免费人成在线观看 | 成人在线播放av | 国产99久久久国产 | 97色婷婷成人综合在线观看 | 久久九九九九 | 精品久久久久久国产91 | 久久久久久网址 | 中文字幕有码在线观看 | 天堂av在线免费 | 五月激情综合婷婷 | 91成人蝌蚪 | 国产在线色| 国产精品大片在线观看 | 精品久久久久久亚洲综合网 | 精品国产一二三四区 | av软件在线观看 | 亚洲九九| 免费在线激情电影 | 久久综合中文字幕 | 人人爽人人爽人人 | 在线免费视频 你懂得 | 四虎影视成人 | 国产精品欧美久久久久久 | 在线观看激情av | 六月丁香社区 | 久久久久高清 | 国产精品av在线 | 亚洲国产精品久久久久 | 91精品视频一区 | 国产夫妻自拍av | 久99精品 | 久久亚洲私人国产精品va | 精品国产乱子伦一区二区 | 亚洲一区欧美激情 | 国产麻豆精品一区 | 国内精品亚洲 | 国产高清不卡av | 国产一区二区在线播放视频 | 天天天天射 | 国产高清专区 | 国产一区二区三区 在线 | 亚洲成人精品在线 | 99热精品国产一区二区在线观看 | 亚洲精品高清视频在线观看 | 午夜久久成人 | 国产成人一区二区三区电影 | 亚洲精品视频在线观看免费视频 | 日韩高清二区 | 欧美激情综合五月色丁香 | 在线视频一二区 | 天堂av在线网站 | 一区二区精品视频 | 最近免费中文字幕大全高清10 | 亚洲精品www. | 热99久久精品 | 2018亚洲男人天堂 | 色综合久久久久综合99 | 草久在线播放 | 国产视频网站在线观看 | 国产成人333kkk | 狠狠久久 | 激情综合网在线观看 | 久久精品欧美一 | 一区二区三区观看 | 国产精品无 | 亚洲精品国产综合99久久夜夜嗨 | 亚洲国产精品电影 | 欧美有色 | 久久国产精品一区二区 | 国产三级香港三韩国三级 | 成人av.com| 五月天综合激情网 | 国产精品第一 | 精品9999| 国产高清福利在线 | 玖玖综合网 | 婷婷干五月 | 久久久精品网站 | 国产成年免费视频 | 国产日韩欧美视频 | 波多野结衣在线中文字幕 | 亚洲成aⅴ人片久久青草影院 | 久久综合毛片 | 欧美在线观看视频一区二区 | 激情影音 | 日韩av电影手机在线观看 | 亚洲高清在线视频 | 综合久久久久 | 久久这里只有精品1 | 九色在线 | 国产精品美女久久久久久 | 免费看国产a | 久草在线这里只有精品 | 丁香视频五月 | 日日干综合 | 久久久久久高潮国产精品视 | 狠狠狠狠狠狠操 | 97在线免费视频 | 美女黄频在线观看 | 午夜在线免费视频 | 婷婷六月综合亚洲 | 人人干人人草 | 夜夜狠狠 | 成人久久国产 | 欧美精品v国产精品 | 久久久www | 亚洲一区动漫 | 国产一区二区久久久 | 久久影院亚洲 | 精品国产一区二区三区不卡 | 91尤物在线播放 | 欧美一区二区三区免费看 | 欧美一级性 | 国产成人久久av免费高清密臂 | 亚洲婷婷网 | 久草在线视频网站 | 国产高清网站 | 免费日韩 精品中文字幕视频在线 | 国产精品淫 | 亚洲欧美色婷婷 | 久久不色 | 婷婷在线精品视频 | 98精品国产自产在线观看 | 亚洲一区欧美激情 | 国产手机在线 | 97在线精品国自产拍中文 | 日韩在线观看影院 | 免费在线国产视频 | 一区二区三区影院 | 精品美女国产在线 | 久久这里只有精品23 | 久久久久国产成人精品亚洲午夜 | 激情久久网 | 日韩激情在线视频 | www.777奇米| 欧美精品乱码久久久久 | 欧美色综合 | 91av99| 精品一区二三区 | 人人草人人草 | 日韩精品久久久久久中文字幕8 | 欧美99热| 久久大香线蕉app | 亚洲手机天堂 | 精品免费在线视频 | 91成人黄色 | 丁香午夜婷婷 | 欧美综合在线观看 | 国产黄色片免费观看 | 中国精品少妇 | 国产精品二区在线 | 国产精品自拍在线 | 青草视频在线免费 | 97成人在线视频 | 国产资源中文字幕 | 久草视频免费在线观看 | 婷婷精品在线 | 久久久久久久久精 | 91在线播放综合 | 狠狠干夜夜操天天爽 | 精品国产成人av在线免 | 国模精品一区二区三区 | 天天操天天干天天玩 | 天天躁天天操 | 99精品国产在热久久下载 | 亚洲 成人 欧美 | 日韩在线不卡视频 | 久久这里有 | 亚洲国产精品va在线 | 免费开视频 | 不卡中文字幕在线 | 午夜久久久久久久久久久 | 日韩中字在线 | 国产精品区一区 | 久久男人影院 | 精品成人在线 | 国产精品久久久久影院 | 天天操福利视频 | 91精品办公室少妇高潮对白 | a在线一区 | 狠狠狠色丁香综合久久天下网 | 亚洲国产精品久久 | 国产激情小视频在线观看 | 不卡的av在线 | 91麻豆精品 | 天堂av观看| 丝袜一区在线 | 欧美国产日韩在线观看 | 日本三级吹潮在线 | 国产精品普通话 | 国产精品99久久久久久久久久久久 | 日日摸日日碰 | 91cn国产在线 | 在线观看网站黄 | 黄色免费在线看 | 国产欧美在线一区 | 天堂av在线免费 | 国产爽妇网 | 国产精品女人久久久久久 | 国产精品12345 | 婷婷 综合 色 | 免费三及片 | 久久综合狠狠狠色97 | 玖玖视频| 亚洲视频 中文字幕 | 色婷婷狠| 人人干人人草 | 探花视频在线观看免费版 | av丝袜美腿| 免费在线观看中文字幕 | 波多野结衣在线播放一区 | www.色五月| 99视频导航 | 精品视频在线免费观看 | 在线免费黄网站 | 精品视频一区在线 | 国产成a人亚洲精v品在线观看 | 午夜影视av| 中文在线字幕免 | 欧美激情xxxx性bbbb | 色婷婷影视 | www.日韩免费| 亚洲成av| 国产精品久久久区三区天天噜 | 欧美日韩精品二区第二页 | 你操综合| 五月天激情婷婷 | 五月婷婷网站 | 欧美精品v国产精品 | 亚洲国产丝袜在线观看 | 亚洲波多野结衣 | 四虎国产精品成人免费影视 | 欧美va天堂va视频va在线 | av在线8| 天天曰视频 | 久久久久成人精品亚洲国产 | 中文字幕在线影院 | 欧美老少交 | 久久精品久久精品久久 | 国产成人精品免费在线观看 | 成人精品国产 | 亚洲精品久久久久中文字幕m男 | 欧美最猛性xxx | 久久www免费人成看片高清 | 精品久久久久久综合日本 | 免费看久久久 | 中文字幕一二三区 | 色播五月婷婷 | 日韩免费av在线 | 国产精品一区二区免费在线观看 | 日一日干一干 | 99草在线视频 | 天天干夜夜爱 | 久久久久久久久爱 | 国产亚洲激情视频在线 | 亚州日韩中文字幕 | 日韩一级成人av | 国产又粗又猛又黄又爽的视频 | 国产精品成人一区二区三区吃奶 | 中文字幕成人一区 | 国产精品久久久久一区二区三区共 | 免费在线播放黄色 | 香蕉视频在线免费 | 国产精品久久久久三级 | 色偷偷88888欧美精品久久 | 久草视频99 | 国产精品资源在线 | 久久艹艹 | 91精品推荐 | 黄网站免费久久 | 色av网站 | 免费a网址 | 久久久久免费视频 | 免费色黄| www久久国产| 国产精品第十页 | av超碰免费在线 | 欧美日韩在线精品 | 国产精品18久久久久久久网站 | 夜夜躁日日躁狠狠久久av | 五月综合在线观看 | 人人爽夜夜爽 | 91福利视频免费 | 久草在线视频在线 | 91高清免费看 | 91日韩精品| 日本精油按摩3 | 久草精品视频在线看网站免费 | 丁香久久婷婷 | 天天操夜夜干 | 久久成 | 亚洲精品中文字幕在线 | 97视频免费在线看 | 国产一区二区久久久久 | 亚洲天天看 | 国产网红在线 | 九九视频在线播放 | 国内久久 | 久草免费福利在线观看 | 国产精品视频免费观看 | 狠狠的操你 | 免费看av片网站 | 人人爱人人添 | 久久久久久久影院 | 国产成人免费在线 | 久久99精品国产麻豆婷婷 | 亚洲欧美国产精品久久久久 | 亚洲波多野结衣 | 一区二区视频网站 | 免费成人av在线看 | 99久久精品免费一区 | 日韩欧美在线观看一区二区三区 | 国产精品久久一区二区三区不卡 | 五月婷亚洲 | 91av大全 | 9797在线看片亚洲精品 | 97视频久久久 | 久久精品免视看 | 久久婷婷影视 | 黄色成品视频 | 在线观看av小说 | 黄色小说免费在线观看 | 在线高清 | 日韩在线 | 亚洲蜜桃av | 亚洲欧美国产精品va在线观看 | 在线观看一级 | 天天综合网天天综合色 | 天天综合天天做 | 久久久久高清 | 国产精品免费高清 | 色吧久久| 久久精品—区二区三区 | 超碰在线人人 | 伊人狠狠色丁香婷婷综合 | 黄色日本免费 | 欧美福利视频一区 | 欧美一二区在线 | www.伊人网| 欧美日韩午夜在线 | 国产精品成人品 | 精品久久久久久久久久久久久久久久久久 | 一区二区欧美激情 | 91在线精品秘密一区二区 | 国产精品一区二区av日韩在线 | 免费三级av| 色综合天天狠天天透天天伊人 | 国产一区二区三区黄 | 亚洲精品一区二区三区在线观看 | 欧美日韩高清不卡 | 国产精品午夜在线 | 中文字幕91视频 | 亚洲国产人午在线一二区 | 久久夜色精品国产欧美一区麻豆 | 久久久精品| 中文字幕丝袜 | 国产乱对白刺激视频在线观看女王 | 久久精品一二三区 | 91秒拍国产福利一区 | 欧美国产日韩一区二区三区 | 日韩理论电影网 | 99操视频| 黄色毛片视频免费观看中文 | 成全免费观看视频 | 超碰伊人网 | 久久午夜鲁丝片 | 欧美日韩国产高清视频 | 久久精品美女视频网站 | 人交video另类hd | 91香蕉视频好色先生 | 永久免费在线 | 亚洲女同ⅹxx女同tv | 欧美在线视频精品 | 狂野欧美激情性xxxx欧美 | 天天做日日做天天爽视频免费 | 黄色三级视频片 | 欧美日韩中文字幕综合视频 | 7777xxxx| 中文字幕 国产 一区 | 天天插日日射 | 国产精品成人一区二区三区吃奶 | 六月丁香婷 | 日韩天天操 | 丁香婷婷色综合亚洲电影 | 一级欧美一级日韩 | av片子在线观看 | 久久久久久久久国产 | 中文字幕精品一区二区三区电影 | 免费看麻豆 | www.久久婷婷 | 国产精品精品国产婷婷这里av | www.888.av | 国产精彩视频一区二区 | 国产成人一区二区啪在线观看 | 色大片免费看 | 狠狠久久综合 | 欧美另类交在线观看 | 久久网站最新地址 | 黄色精品久久久 | 久久电影中文字幕视频 | 99精品视频免费看 | 五月婷婷激情综合 | 91亚洲夫妻 | 午夜av在线 | 9797在线看片亚洲精品 | 国产欧美在线一区二区三区 | 伊人亚洲综合 | 欧美a在线免费观看 | 美女免费视频一区二区 | 亚洲永久在线 | 久久久国产一区二区三区四区小说 | 欧美男男激情videos | 国产在线污 | 国模精品一区二区三区 | 黄色软件大全网站 | 在线免费高清视频 | 国产免费亚洲 | 在线午夜电影神马影院 | 天堂av在线 | 天天操天天摸天天射 | 婷婷丁香导航 | 日日操日日操 | 青青草国产成人99久久 | 九九热1 | 欧美一级片免费观看 | 欧美伊人网 | 国产黄av| 人人干人人艹 | 中文字幕国产精品 | 欧美日韩视频网站 | 日本性生活免费看 | 国产一区二区观看 | 成人欧美亚洲 | 日韩欧美在线视频一区二区三区 | 一区二区三区免费在线观看 | 天天色影院 | 欧美日韩后 | 色综合久久久网 | 欧美日韩视频精品 | 激情综合色综合久久 | av中文字幕日韩 | 日日夜夜免费精品 | 日本精品视频免费观看 | 日韩天堂在线观看 | 日韩色综合网 | 中文亚洲欧美日韩 | 免费在线观看av不卡 | 亚洲精品乱码久久久久久久久久 | 国产在线传媒 | 国产视频一二区 | 国产在线色站 | 久草在线视频在线观看 | 日韩三级视频在线看 | 精品一区二区av | 一区二区三区在线免费播放 | 久久在线视频在线 | 四虎影视av | 在线观看视频你懂 | 在线午夜| 日韩精品视频网站 | 国产成人精品亚洲a | 在线观看亚洲精品 | 久久社区视频 | 中文字幕av免费在线观看 | 欧美-第1页-屁屁影院 | 日韩高清免费观看 | 91精品国自产拍天天拍 | 五月天婷婷丁香花 | 国产精品第10页 | 国产精品久久久一区二区三区网站 | 国产视频一区二区在线播放 | 免费视频久久久 | 国产老太婆免费交性大片 | 国产成人av福利 | 中文超碰字幕 | a在线观看国产 | 亚洲 成人 欧美 | 豆豆色资源网xfplay | 精品电影一区 | 五月婷婷香蕉 | 在线看日韩 | 久久少妇免费视频 | 国产精品涩涩屋www在线观看 | 人人看人人艹 | 精品久久久网 | 伊人国产在线播放 | 久久久久久久久免费视频 | 国产69精品久久99的直播节目 | 久久久久久久久久久网 | 国产伦理精品一区二区 | 91精品在线免费视频 | 中文字幕亚洲字幕 | 久久艹久久 | 日本免费久久高清视频 | 999久久久免费精品国产 | 午夜精品福利影院 | 亚洲在线视频播放 | 99视频久| 国产精久久久久久久 | 日韩在线高清视频 | 在线观看国产中文字幕 | 亚洲人久久 | 最新国产一区二区三区 | 婷婷激情在线 | 五月开心激情 | 99精品欧美一区二区三区黑人哦 | 国产免费高清视频 | 国产精品久久久久久久婷婷 | 精品国产一区二区三区久久影院 | 国产精品一区二区果冻传媒 | 免费a v在线 | 五月宗合网 | 久久成年人网站 | 国产精品69久久久久 | 懂色av一区二区在线播放 | 国产第一页精品 | 国产精品青草综合久久久久99 | 激情网站免费观看 | 国产无套精品久久久久久 | 亚洲综合视频在线 | 欧美在线观看禁18 | 久久精品视频一 | 亚洲色五月 | 天天天色| 国产做a爱一级久久 | 超碰在线公开 | 2023国产精品自产拍在线观看 | 操操操综合 | 激情影院在线观看 | 欧美激情精品久久久 | 麻豆影视在线免费观看 | 1区2区3区在线观看 三级动图 | 国产不卡在线视频 | 亚洲一区二区视频在线 | 国产亚洲人成网站在线观看 | 天天操天天爽天天干 | 国产一区二区在线免费 | 夜夜视频欧洲 | 国内精品久久久久久久久久 | 精品一区二区三区四区在线 | 97操操操 | 在线亚洲人成电影网站色www | 亚洲成人黄色在线观看 | 国产精品久久久久久吹潮天美传媒 | 在线视频手机国产 | 久免费视频 | 天天干天天操人体 |