国产精品青草久-国产精品情侣愉拍-国产精品区网红主-国产精品区一区二-国产精品热久久-国产精品热热热-国产精品人aⅴ-国产精品人成在线-国产精品人妻人伦-国产精品人人

金喜正规买球

Qt6最新資訊:QMetaType + QVariant的新增功能

翻譯|使用教程|編輯:鮑佳佳|2020-10-26 13:39:08.137|閱讀 607 次

概述:您可能知道,Qt有一個元類型系統,該系統提供有關類型的運行時動態信息。它可以將您的類型存儲在QVariant中,并在信號插槽系統中排成隊列,并在整個QML引擎中使用。在即將發布的Qt 6.0版本中,我們借此機會重新審視了它的基礎知識,并利用了C ++ 17為我們提供的功能。在下文中,我們將檢查這些更改,并說明它們如何影響您的項目。

# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>

相關鏈接:

Qt是一個跨平臺框架,通常用作圖形工具包,它不僅創建CLI應用程序中非常有用。而且它也可以在三種主要的臺式機操作系統以及移動操作系統(如Symbian,Nokia Belle,Meego Harmattan,MeeGo或BB10)以及嵌入式設備,Android(Necessitas)和iOS的端口上運行。現在我們為你提供了免費的試用版。趕快點擊下載Qt最新試用版>>

點擊獲取更多文章教程

慧都現推出軟件國產化服務季點擊查看詳情,Qt正版授權獲取低價優惠>>

您可能知道,Qt有一個元類型系統,該系統提供有關類型的運行時動態信息。它可以將您的類型存儲在QVariant中,并在信號插槽系統中排成隊列,并在整個QML引擎中使用。在即將發布的Qt 6.0版本中,我們借此機會重新審視了它的基礎知識,并利用了C ++ 17為我們提供的功能。在下文中,我們將檢查這些更改,并說明它們如何影響您的項目。

QMetaType更加了解您的類

在Qt 5中,QMetaType包含默認構造一個類,復制它并銷毀它所必需的信息。此外,它知道如何將其保存到QDataStream以及從QDataStream加載它,并存儲了一些標志來描述它的各種屬性(例如,類型是否瑣碎,枚舉等)。另外,它將存儲該類型的QMetaObject(如果有的話)和一個數字ID,以標識該類型以及類型名稱。

最后,QMetaType包含用于比較某種(元)類型的對象,進行打印qDebug以及從一種類型轉換為另一種類型的功能。但是,您必須使用QMetaType::registerComparators()QMetaType中的和其他靜態寄存器函數才能真正利用該功能。這會將指向這些函數的指針放入相應的注冊表中,基本上是從元類型ID到函數指針的映射。


在Qt 6中,我們做的第一件事就是擴展QMetaType中存儲的信息。現代C++已經有將近10年的歷史了,所以是時候在QMetaType中存儲移動構造函數的信息了。而且為了更好地支持過度對齊的類型,我們現在也存儲了你的類型的對齊要求。此外,我們認為注冊表有點笨拙。畢竟,我們為什么要要求你調用QMetaType::registerEqualsComparator(),而我們已經可以通過簡單地查看類型來知道這一點?所以在 Qt 6 中,QMetaType::registerEqualsComparator、QMetaType::registerComparators、qRegisterMetaTypeStreamOperators 和 QMetaType::registerDebugStreamOperator 已經被刪除。元類型系統會自動知道這些。這里的例外是QMetaType::registerConverterFunction。相反,元類型系統將自動知道這些信息。這里的離群值是QMetaType::registerEqualsComparatorQMetaType::registerComparatorsqRegisterMetaTypeStreamOperatorsQMetaType::registerDebugStreamOperatorQMetaType::registerConverterFunction。由于無法可靠地知道應該使用哪些函數進行轉換,并且我們允許注冊基本上任意的轉換,因此該功能與Qt 5中的相同。

通過這些更改,我們還可以統一處理Qt內部類型和用戶注冊的類型:這意味著例如QMetaType::compare現在可以使用int:

#include 
#include 

int main() {
  int i = 1;
  int j = 2;
  int result = 0;
  const bool ok = QMetaType::compare(&i, &j, QMetaType::Int, &result);
  if (ok) {
    // prints -1 as expected in Qt 6
    qDebug() << result; } else { // This would get printed in Qt 5 qDebug() << "Cannot compare integer with QMetaType :-("; } }

QMetaType在編譯時知道您的類型

多虧了C++反思能力的各種進步,我們現在可以在編譯時從一個類型中獲得我們需要的所有信息--包括它的名字。在 Qt 中,我們使用了一個非常類似的方法,盡管對舊編譯器進行了某些擴展和變通。但比實現更有趣的是它對你意味著什么。首先,我們不需要通過以下兩種方式創建 QMetaType

QMetaType oldWay1 = QMetaType::fromName("KnownTypeName");

或者

QMetaType oldWay2(knownTypeID);

現在建議您使用以下命令創建QMetaType

QMetaType newWay = QMetaType::fromType();

如果你知道類型。其他方法仍然存在,當你在編譯時不知道類型時,這些方法是有用的。然而,fromType 避免了在運行時從 id/name 到 QMetaType 的一次查找。請注意,從 Qt 5.15 開始,你已經可以使用 fromType 了,但它仍然會進行一次查找。此外,你不能復制QMetaType,這限制了它的實用性,使它更方便地傳遞類型id。然而,在 Qt 6 中,QMetaType 是可以復制的。

你現在可能會問,這對 Q_DECLARE_METATYPE 和 qRegisterMetaType 意味著什么。畢竟,如果我們可以在編譯時創建QMetaTypes,我們真的需要它們嗎?

我們先來看一個例子。

#include 
#include 
#include 

struct MyType {
  int i = 42;
  friend QDebug operator<<(QDebug dbg, MyType t) { QDebugStateSaver saver(dbg); dbg.nospace() << "MyType with i = " << t.i; return dbg; } }; int main() { MyType myInstance; QVariant var = QVariant::fromValue(myInstance); qDebug() << var; }

在Qt 5中,這將導致以下帶有gcc的錯誤消息(+有關實例化失敗的更多警告):

/usr/include/qt/QtCore/qmetatype.h: In instantiation of 'constexpr
int qMetaTypeId() [with T = MyType]':
/usr/include/qt/QtCore/qvariant.h:371:37:   required from 'static QVariant
QVariant::fromValue(const T&) [with T = MyType]'
test.cpp:16:48:   required from here
/usr/include/qt/QtCore/qglobal.h:121:63: error: static assertion failed: Type is
not registered, please use the Q_DECLARE_METATYPE macro to make it known to Qt's
meta-object system
  121 | #  define Q_STATIC_ASSERT_X(Condition, Message) static_assert(bool(Condition), Message)
      |
^~~~~~~~~~~~~~~
/usr/include/qt/QtCore/qmetatype.h:1916:5: note: in expansion of macro 'Q_STATIC_ASSERT_X'
 1916 |     Q_STATIC_ASSERT_X(QMetaTypeId2::Defined, "Type is not registered, please use the Q_DECLARE_METATYPE macro to make it known to Qt's meta-object system");

這不是很好,但至少它告訴你需要使用 Q_DECLARE_METATYPE。然而,在Qt 6中,它可以很好地編譯,可執行文件將打印QVariant(MyType, MyType with i = 42),正如人們所期望的那樣。不僅是QVariant,隊列連接也可以在沒有明確的Q_DECLARE_METATYPE的情況下工作。

現在,qRegisterMetaType呢?很不幸,這個還是需要的--假設你需要名稱到類型的查找。雖然一個QMetaType對象知道它被構造出來的類型名稱,但全局名稱到元類型的映射只有在調用qRegisterMetaType之后才會發生。舉例說明一下。


struct Custom {}; 
 const auto myMetaType = QMetaType::fromType();    
// At this point, we do not know that the name "Custom" maps to the type Custom
  int id = QMetaType::type("Custom");  Q_ASSERT(id == QMetaType::UnknownType);    
qRegisterMetaType();  // from now on, the name -> type mapping works, too  id = QMetaType::type("Custom")  Q_ASSERT(id == myMetaType.id());
如果您使用舊樣式的signal-slot-connections或使用,仍然需要具有可用的類型映射名稱QMetaObject::invokeMethod。

在編譯時創建QMetaType的能力也允許我們將一個類的屬性的元類型存儲在它的QMetaObject中。這一改變主要是出于QML,這一改變給我們帶來了更高的性能,并且希望未來能減少內存消耗。

. 不幸的是,這個變化對屬性聲明中使用的類型提出了新的要求。當moc看到它時,它的類型(或者如果它是一個指針/引用,指向的類型)需要完整。為了說明這個問題,請看下面的例子。

// example.h
#include 
struct S;

class MyClass : public QObject
{
  Q_OBJECT

  Q_PROPERTY(S* m_s MEMBER m_s);
  S *m_s = nullptr;

  public:
    MyClass(QObject *parent = nullptr) : QObject(parent) {}
};

在Qt 5中,這沒有問題。但是,在Qt 6中,您可能會收到類似錯誤。

In file included from qt/qtbase/include/QtCore/qmetatype.h:1,
                 from qt/qtbase/include/QtCore/../../../../qtdev/qtbase/src/corelib/kernel/qobject.h:54,
                 from qt/qtbase/include/QtCore/qobject.h:1,
                 from qt/qtbase/include/QtCore/QObject:1,
                 from example.h:1,
                 from moc_example.cpp:10:
qt/qtbase/include/QtCore/../../../../qtdev/qtbase/src/corelib/kernel/qmetatype.h: In instantiation of 'struct QtPrivate::IsPointerToTypeDerivedFromQObject':
qt/qtbase/include/QtCore/../../../../qtdev/qtbase/src/corelib/kernel/qmetatype.h:1073:63:   required from 'struct QtPrivate::QMetaTypeTypeFlags'
qt/qtbase/include/QtCore/../../../../qtdev/qtbase/src/corelib/kernel/qmetatype.h:2187:40:   required from 'QtPrivate::QMetaTypeInterface QtPrivate::QMetaTypeForType::metaType'
qt/qtbase/include/QtCore/../../../../qtdev/qtbase/src/corelib/kernel/qmetatype.h:2309:16:   required from 'constexpr QtPrivate::QMetaTypeInterface* QtPrivate::qTryMetaTypeInterfaceForType() [with Unique = qt_meta_stringdata_MyClass_t; TypeCompletePair = QtPrivate::TypeAndForceComplete >]'
qt/qtbase/include/QtCore/../../../../qtdev/qtbase/src/corelib/kernel/qmetatype.h:2328:55:   required from 'QtPrivate::QMetaTypeInterface* const qt_incomplete_metaTypeArray [1] > >'
moc_example.cpp:102:1:   required from here
qt/qtbase/include/QtCore/../../../../qtdev/qtbase/src/corelib/kernel/qmetatype.h:766:23: error: invalid application of 'sizeof' to incomplete type 'S'
  766 |         static_assert(sizeof(T), "Type argument of Q_PROPERTY or Q_DECLARE_METATYPE(T*) must be fully defined");
      |                       ^~~~~~~~~
make: *** [Makefile:882: moc_example.o] Error 1

注意靜態斷言,它告訴您必須完全定義類型。可以通過三種不同的方式解決此問題:

  1. 不需要正向聲明類,只需要包含定義S的頭文件即可。
  2. 由于包含額外的頭會對構建時間產生負面影響,你可以使用Q_MOC_INCLUDE宏來代替。那么只有moc會看到這個包含。簡單地使用Q_MOC_INCLUDE("myheader.h")代替#include "myheader.h"。
  3. 或者你也可以在你的cpp文件中包含moc生成的文件。當然,這需要實際包含所需的頭文件。

最后,在極少數情況下,您會故意使用不透明的指針。在這種情況下,您需要使用Q_DECLARE_OPAQUE_POINTER被使用。

盡管在我們的經驗中具有不完整類型的屬性并不常見,但這肯定不是最佳選擇。此外,我們目前正在研究擴展工具支持,以至少自動檢測到此問題。

同樣,我們也嘗試為元對象系統已知的方法(信號、槽和Q_INVOKABLE函數)的返回類型和參數創建元類型。這樣做的好處是可以避免在基于字符串的連接和QML引擎內部進行一些名稱到類型的查找。然而,我們知道,在methdos中,不完整的類型是非常常見的。因此,對于方法,我們仍然有一個回退路徑,方法類型不需要完整,所以不需要在那里進行修改。如果可以的話,我們會在編譯時將元類型存儲在元對象中,但如果不能的話,我們會在運行時簡單的查找。不過有一個例外:如果你使用聲明式類型注冊宏(QML_ELEMENT和friends)來注冊你的類,我們甚至要求方法類型是完整的。在這種情況下,我們假設你公開的所有元方法實際上都是要在QML中使用的,因此你希望避免任何額外的運行時類型查找(注意這不會影響父類的元方法)。

QMetaType為QVariant提供動力

在我們重構了QMetaType之后,我們也可以清理我們古老的QVariant類的內部結構。在 Qt 6 之前,QVariant 在內部區分了用戶類型和內置 Qt 類型,這使得該類變得非常復雜。QVariant也只能在其內部緩沖區中存儲最大尺寸為sizeof(void *)和sizeof(double)的值。其他任何值都會被堆分配。在Qt 6中,其他任何東西都會包括常用的類,比如QString(因為QString在Qt 6中是3*sizeof(void *)大)。所以很明顯,我們必須為Qt 6重新設計QVariant。而我們也確實重新設計了它!我們設法簡化了它的內部架構。我們設法簡化了它的內部架構,并使常見的用例變得更快。這包括修改 QVariant,使其現在在 SSO 緩沖區中存儲類型 <= 3*sizeof(void *) 。除了允許繼續存儲QStrings而不需要額外的分配,這也使得它可以存儲多態的PIMPL'd類型,如QImage3的QVariant中。這應該證明對在data()中返回圖像的項目模型有利。

我們還在 QVariant 的現有方法中引入了一些行為變化。我們意識到沉默的行為改變是常見的bug來源,但認為當前的行為有足夠的bug傾向,所以才會有這樣的改變。以下是更改的內容列表。

  • QVariant 曾經將 isNull() 調用轉發到它所包含的類型--但只適用于有限的 Qt 自己的類型集。這一點已經被改變了,isNull()現在只在QVariant為空或包含一個nullptr時返回true。
  • QVariant 的 operator== 現在使用 QMetaType::equals 進行比較。這意味著一些圖形類型的行為改變,比如 QPixmap、QImage 和 QIcon,在 Qt 6 中永遠不會進行等價比較(因為它們沒有比較運算符)。此外,QVariant 中的浮點數現在不再通過 qFuzzyCompare 進行比較,而是使用精確比較。

另一個值得注意的變化是,我們刪除了帶有QDataStream的QVariant的構造函數。與其構建包含QDataStream的QVariant(與其他構造函數一致),不如嘗試從數據流加載QVariant。如果您確實想要這種行為,請operator>>改用。還請注意,QVariant::Type在Qt 6中已棄用了它及其相關方法(但仍然存在)。QMetaType::Type已添加使用的替代API 。這很有用,因為QVariant::type()只能返回QVariant::UserType用戶類型,而新的QVariant::typeId()總是返回具體的元類型。QVariant::userType這樣做(在Qt 5中已經這樣做),但是從其名稱來看,它顯然也不適用于內置類型。

最后,我們向QVariant添加了一些新功能:

  • QVariant::compare(const Variant &lhs, const QVariant &rhs)可用于比較兩個變體。它返回一個std::optional。如果值不可比(因為類型不同,或者因為類型本身不具有可比性),std::nullopt則返回。否則,返回包含int的可選。如果所包含的值in中的值lhs小于,則為負數rhs;如果相等,則為0;否則為正數。
  • 現在可以從QMetaType構造一個空的QVariant(而不是傳入QMetaType :: Type,然后將其用于構造QMetaType)。由于類似的原因,可以將QMetaType傳遞給該convert函數。
  • 由于QMetaType在Qt 6中存儲對齊信息,因此QVariant現在支持存儲超對齊類型。

結論與展望

Qt元類型系統的內部是Qt的一部分,大多數用戶很少與之交互。但是,它是框架的核心,用于實現更多以用戶為中心的部分,例如QML,QVariant,QtDbus,Qt Remote Objects和ActiveQt。借助Qt 6中的更新,我們希望它在下一個十年中能夠像上一個一樣為我們服務。

說到下一個十年,您可能想知道元類型系統的未來將如何發展。除了我們已經提到的使用它來增強QML引擎的計劃之外,我們還打算改善信號/插槽連接邏輯。這些更改都不應該以任何方式影響您的代碼,而只是在幾個地方提高性能和內存使用率。在更遠的將來,我們當然也將監視C ++的發展,尤其是在靜態反射和元類方面。盡管我們預計moc不會很快消失,但我們確實考慮在它們廣泛可用后,將其某些功能替換為C ++功能。

提前預告一下,我們在Qt 6.0中又增加了一項新功能:QMetaContainer。在下一篇博文中我們將會告訴你它是什么有什么作用。

感謝您的閱讀,希望這篇文章能帶給你一定的幫助!如果這篇文章沒能滿足你的需求、點擊獲取更多文章教程!現在立刻下載Qt6免費試用吧!更多Qt類開發工具QtitanRibbonQtitanChartQtitanNavigationQtitanDockingQtitanDataGrid在線訂購現直降1000元,歡迎咨詢慧都獲取更多優惠>>


標簽:

本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn

文章轉載自:

為你推薦

  • 推薦視頻
  • 推薦活動
  • 推薦產品
  • 推薦文章
  • 慧都慧問
掃碼咨詢


添加微信 立即咨詢

電話咨詢

客服熱線
023-68661681

TOP
国外自产拍无码精品视频在线观 | 国内少妇人妻 | 日韩在线视频二 | 高清性色生活片试看 | 99热国产这里只有精品6 | 国产精品白丝祙喷水视 | 无码一区二区 | 日韩av无 | 精品人妻人人做人人爽夜夜爽 | 成人h动漫精品一区二区 | 亚洲国产日韩a精品 | 自在自线国产精品 | 无码啪一啪在线 | 无码国产 | 二区久久国产 | 99热这里只有精品国产99 | 亚洲精品97| 精品免费播放 | 97精品国产高清久久久久蜜芽 | 亚洲毛片不卡av在线播放一区 | 丰满岳乱妇在线观看视频国产 | 午夜福利免费0948视频 | 国内精品自在自线视频香蕉 | 欧美日韩在线观看免费 | 欧美日韩国产成人高清视频久久国产 | 99热国产这里只有精品无国产亚洲 | 日日摸夜夜添夜夜添国产三级 | 午夜精品一区二区 | 国产精品99婷| 国内精品久久久久久99蜜桃 | 国产成人无码精品久久久影院 | av无码专区亚洲avl在线观看 | 亚洲第一aⅴ天堂在线观看 亚洲第一av | 亚洲五月丁香综合视频 | 国产v亚洲v| 国产伦理一区二区 | 欧美日韩高清一区二区三区 | 亚洲国产精品电影人久久网站 | 精品国产一区av天美传媒 | 国语精品91自产拍在线观看一区 | 成人精品一区二区 | 97精品国产一区 | 69堂国产成人精品视须不卡 | 91香蕉成人app最新版官网 | 99久久精品国产 | 99精品久久久久久久婷婷 | 日韩漂亮素人在线视频观看 | 亚洲国产成人精品无码区在线网站 | 国产伦精品一区三区视频 | 99久久人人爽亚洲精品美女 | 国产高潮流白浆免费观看不卡 | 美女高潮无套内谢视频 | 国模冰莲自慰肥美胞极品人体图 | 中文字幕一区二区三区 | 成人欧美一区在线视频在线观看 | 丰满人妻一区二区三区视频53 | 国产人妇三级视频在线观看 | 亚洲视频中文字幕在线观看 | 成人爱做日本视 | 国产毛片a级久久久不卡精品 | 欧美性做爰大片免费看软件男组长 | 久久99九九精品久久久久齐齐 | 日韩一级a欧美成人 | 精品一区精品二区制服 | 国产亚洲精品久久 | 日本理伦片午夜理伦片 | 亚洲你懂的 | 偷偷要色偷偷网站视频 | 日日av拍夜夜添久久免费 | 国产美女短视频一区 | 国产午夜精品一区二区 | 亚洲免费福利精品日韩视频 | 国产精品毛片久久久久久 | 中日精品无码一本二本三本 | 久久99国产精品一区二区 | 国产日韩欧美一区二区综合 | 国产高清无码久久 | 成人区人妻精品一区二区不卡 | 亚洲毛片不卡av在线播放一区 | 97国产婷婷综合视 | 亚洲一线精品精品在线观看 | 色欲色香天天天综合网www | 日日av拍夜夜添久久免费 | av无码免费 | 欧美成人精品三级网站在线观 | 中文字幕亚洲综合久久2025 | 国产亚洲综合精品一区二区三区 | 中文字幕热久久久久久久 | 久久99国产综合精品1 | 中文字幕第1页精品一区 | 午夜日本一区二区三区 | 国产精品毛片一区二区三区 | 国产真实伦在线观看视频 | 日韩欧美自拍区 | 中文国产一区二区三区在线观看 | 国产欧美一区二区三区在线看 | 91探花国产| 亚洲精品无码成人片久久 | 亚洲日韩国产一 | 日本wv一本| 色婷婷六月桃花综合影院 | 在线观看免费人成视频色9 在线观看免费视频一区 | 国产一区二区精品久久呦 | 高清一区二区三区尤物 | 国产精品成人a片在线播放 国产精品成人va | 国产精华液一线二线三线 | 亚洲国产99在线视频 | 精品国产天堂 | 国产成人无码精品久久二区三区 | 国产激情在线观看 | 99久re热视频这里只有精品6 | 国产人成午夜免电影费观看 | 果冻传媒携手京东天美麻豆 | 精品999久久久一级毛片 | 国产伦精 | 无码精品一区二区三区视频蜜臀 | 国产又爽又黄又嫩又猛又粗 | 精品国产乱子伦一 | 国产v片在线播放免费观看大全 | 97se亚洲国产综合自在线尤物 | 午夜a级理论片在线播放不 午夜a级理论片在线播放不卡 | 精品少妇人妻av无码久久 | 三级三级三级a级全黄三 | 日韩午夜影院在线观看 | 精品无码一区二区三区在线 | 最新国产精品拍自在线观看 | 亚洲日韩国产a级无码精品 亚洲日韩国产成网在线观看 | 亚洲av成人无码一 | 99ri| 人妻无码久久精品人妻 | 中日韩无码水多多影视 | 国产乱xxⅹxx国语对白 | 亚洲av无码一区二区在线 | 日韩精品一区二区三区免费在线 | 精品久久久一区无码av野花影视 | 91一区二区三区久久国产乱 | 国产黄色大片 | 国产亚洲精品美女久久久 | 日韩a∨无码精品一二三区 日韩aⅴ精品国内在线 | 国产樱花草青青草 | 国产精品一区电影 | 色噜噜狠狠色综合网 | 成人午夜a级毛片免费 | 精品国产一区 | 99久久免费只有精品国产免费视频 | 熟妇高潮精品一区二区三区 | 国产一二三四区中 | 在线成av人电影观看 | 白丝内射| 日日碰狠狠添天天爽不卡 | 91久久偷偷看嫩草影院无费 | 日韩精品免费无码一区二区 | 国产免费黄色视频 | 亚洲精品国产乱码在线看天美 | 日韩精品中文字幕一区二区三区 | 91在线国产手机在线 | 亚洲综合无码一区二区加勒此 | 99久久精品国产一区二区免费 | 亚洲最全av天在线观看 | 国产99欧美精品久久精品 | 精品久久无码中文 | 国产免费看黄的私人影院 | 高潮在线观看 | 91香蕉视频下载 | 欧美午夜精品一区二区蜜桃 | 国产亚洲精品久久久999功能介绍 | 91精品国产一区二区三区在线 | 国产一级在线观看www色 | 91福利导航 | 成人拍拍拍免费视频网站 | 国产精品第 | 欧美日韩中文字幕 | 亚洲一区二区三区四区在线观看 | 精品久久久无码人妻中 | 中文字幕中出在线观看 | 亚洲av无码电影在线播放 | 91麻豆天美精东蜜桃传媒老 | 国产三级在线 | 国产精品成人99久久久久 | 3d动漫av在线观 | 国产av无码福利精品成人久久 | 精品一区二区高清免费观 | 国产成+人+ | 日一卡2卡3卡4卡新区乱码久久 | 91在线精品| 亚洲午夜精品一区二区三区 | 日韩亚洲国产激情在线观 | 日韩精品高清一区二区三区 | 国产一区二区网曝门日韩 | 成人亚洲天堂 | 殴美一性一乱一交一视频 | 91精品国产91久久久久久麻豆 | 精品国产a毛片久久久av蜜桃 | 97国产婷婷综合在线视频 | 国产亚洲精品91 | 亚洲v国产v天堂a无码二区久久 | 欧美日韩午夜精品不卡综合 | 人妻无码aⅴ中文字幕日韩 人妻无码aⅴ中文字幕视频 | 黄色片在线免费观看 | 东京热aⅴ无码一区二区 | 国产伦精品一区二区三区免.费 | 在线精品国产大象香蕉网 | 欧美日韩国产一级 | 国产在线麻豆影院 | 亚洲а∨精品天堂在线 | 无码精品人妻一区二区三区影院 | 在线日韩av免费永久观看 | 国产一区二区中 | 午夜视频体内射.com.com | 国产成人无码精品久免费 | 精品人妻系列无码人妻 | 亚洲免费人成视频在线观看 | 一区二区三区精品aⅴ专区 一区二区三区精品黄色影院 | 久久er99热精品一区二区 | 精品深夜av无码一区二区老年 | 亚洲av无码成人精品区在线观 | 97国产喷水福利在线二区 | 成全视频| 日韩黄色三级三级 | av无码理论片在线观看免费网站 | 国产日本一区二区三区 | 丰满大码的熟女在线视频剧集正版 | 韩国理伦片一区二区三区在线播放 | 精品国产福利第一区二区三区 | 午夜理论片精品国产 | 亚洲av永久青草无码精品 | 国产综合激情在线亚洲第一页 | 97精品国产高清久久久久蜜芽 | 国产在线不卡精品网站 | 无码国产精品一区二区vr | 91在线精品播放 | 国产一级无码午夜大片 | 日韩无码hd中文字幕 | 国内亚洲精品视频在线观看 | 91视频污污污| 欧美久草 | 成人午夜免费无码视频在线观看 | 欧美性猛交xxxx | 99不卡无码中文字幕在线 | 国产美女视频久久午夜 | 国产成人综合久久精品推荐 | 精品久久aⅴ人妻中文字幕 精品久久av电影 | 国产精品区一区二区三在线播放 | 日韩av在线免费观看 | 国产精品人人爽人 | 国产噜噜噜噜久久久久久久久 | 亚洲综合色区在线观看 | 国产一区二区三区不卡在线看 | 欧美日韩女优在线 | 中文字幕一区二区三区在线不卡 | 欧美日韩女优在线 | 人人超人人超碰超国产 | 97无码免费人妻超级 | 国产激情综合在线观看 | 久艹在线视频 | 深夜福利视频在线观看 | 亚洲av无码国产精品麻 | 天美传媒麻豆精东蜜桃 | 日本免費黃色視頻 | 人妻无码中文久久久久专区 | 午夜成人鲁丝片午夜精品 | av乱码av | 精品国产乱子伦一区二区三区 | 国产精品综合色区在线观看 | av无码理论片在线观看免费网站 | 亚洲视频在线观看一区 | a级国产乱理伦片在线观 | 精品无人区一区二区三区 | 久久99操| 91桃色视频 | 成年女人免费视频播放体验区 | 亚洲一区二区三区在线观看网站 | 国产成人免费高潮激情视频 | 中文字幕有码在线观看 | 精品香蕉久久久午夜福利 | 91精品国产91久久久 | 香蕉免费在线一区二区三区 | 亚洲午夜国产精品无卡 | 国产a免| 日韩在线一区二区 | 国产精品9| www毛片 | 一区二区不卡 | 色欲国产av一级无码 | 999精品视| 欧美成人精品三级网站在线观看 | 国产性猛交xxxx免费看久久 | 亚洲精品久久久中文字幕痴女 | 欧美日韩激情亚洲国产 | 日韩免费一区 | 国产青草视频在线观看 | 国产成人午夜福利免费无码r | 欧美日韩高清中文在线 | 中文精品久久久久国产不卡 | 亚洲乱码无码 | 亚洲精品高清一线久 | 午夜免费观看福利片一区二 | 99re热有精品视频国产 | 国产一级毛一级a看免费视频 | 亚洲日本aⅴ片在线观看香蕉 | 亚洲午夜精品久久久久久app | 区二区不卡 | 亚洲精品综合在线一区二区 | 国产精品国产自线拍免费 | 精品免费播放 | 午夜美女黄网站18禁免费观看 | 午夜性生大片免费观看 | 十大最污日本动漫都是少儿不宜啊! | 中文字幕aⅴ人妻一区二区 中文字幕aav | 偷拍激情视频一区 | 亚洲日本欧美中文幕 | 中文字幕亚洲视频 | 午夜美女国产一区 | 日本三级片在线观看 | 中文字幕一区二区三区 | 精品二区中文字幕播放 | 日本一区二区三区在线观看网站 | 亚洲精品精品一线久久 | 高潮喷水 | 三级片在线观看午夜av | 91福利国产在线观看网站 | 亚洲av永久纯肉无码精品动漫 | 中文字幕大香视频蕉 | 国产乱人伦av在线a 国产乱人伦av在线a麻豆 | 无码中文字幕人妻在线一区二区三区 | 国产精品无码久久久久久久久久 | 国产三级一区二区三区 | 偷拍激情视频一区 | 日韩人妻无码精品无码中文字幕 | 毛片免费视频在线观看 | 精品国产亚洲一区二区三区在线 | 日韩人妻潮喷观看 | 成年福利片在线观看 | 成人免费视频一区二区 | 国产在线精品成人一区二区三区 | 无码视频一区二区三区在线观看 | 午夜在线亚洲 | 91久久精品日日躁夜夜躁欧美 | 国产有码无码精品在线 | 91短视频官网 | 91制片厂制作传媒网站免费观看 | 亚洲精品乱码久久久久久不卡 | 日本xxxx片免费观看国产 | 惠民福利国产96av在线播放视频 | 91麻豆精品激情在 | 亚洲精品国产男 | 国产一区高清在线欧美 | 精品福利一区二区三区免费视频 | 亚洲av成人一区二区三区观看 | 一区二区三区精品视频 | 69国产成人精 | 国产成人8x人网站在线视频 | 九九热精品视频在线 | 黄色三级电影久久 | 国产亚洲成在线播放va电影 | 国产精品女同 | 成人欧美一区在线视频在线观看 | 自拍另类 | 99精品一区二区三区无码吞精 | 午夜丰满少妇性开放视频 | 91桃色无码国产在线观看二区 | 国产精品真实灌醉女在线播放 | 国产精品国产三级国产a | 日韩av无码成人精品国产 | 午夜亚洲国产理论片中文飘 | 国产成人免费a在线视频 | 99国产综合亚洲精品 | 日韩欧美电影在线 | 国产黄片av免费观看 | 免费无码片国产在线观看 | 色噜噜亚洲精品中文字幕 | 精品久久久久久久无码人妻热 | 办公室爆乳女秘 | 亚洲国产精品午夜在线观看 | 国产精品亚洲欧美一区麻豆 | 人少妇乱子伦精 | 成人网站免费大全日韩国产 | www国产精品黄色 | 国产精品免费看久久久无码 | 成人免费午夜无码视频 | 精品国产乱码久久久久夜深人妻 | 中文字幕亚洲一区二区三区 | 国产永久观看在线 | 免费一级毛片在播放视频 | 久久99热狠狠色精品 | 精品一区二区三区蜜桃hd | 精品国产三级a乌鸦在线观看99 | 欧美午夜免费大片 | 国自产精品手机在线视拍 | 日本一区二区三区四区在线观看 | 精品久久久久久亚洲综合 | 凹凸国产熟女精品视频app | 午夜三级中文不卡电影 | 国产最全在线观看性 | 久久99亚洲网美利坚合众国 | av在线播放不卡 | 国产亚洲av无码av男人的天堂 | 午夜精品偷拍 | 久久aaaa片一区二区 | 国产精品国内自产 | 亚洲va在线va | 爱豆传媒高清电影手机在线播放 | 国产午夜精品区 | 国产亚洲综合性久久久影院 | 国产亚洲成人网在线播放av | 老司机成人永久精品视频 | 99久久国产综 | 在线a亚洲视频播放在 | 国产精品毛片无码一区二区蜜桃 | 91与国产超碰在线观看 | 日本高清中文字幕在线 | 亚洲中文字幕无码 | 另类小说| 97精品国产91久久久久久 | 精品自拍视频在线观看电影 | 91精品国产乱 | 精品国产欧美一区二区三区成人 | 中文国产成人精品久久不卡 | 精品人妻一区二区三区含羞草 | 午夜成人理论无码电影在线播放 | 精品国产a | 国产精品亚洲av高清二区 | 国产精品99久久久久 | 无套露脸在线观看 | 成人午夜免费无码视频在线观看 | 亚洲一区在线视频 | 国产日韩久久久 | 中文字日产幕乱五区 | 人与动物ppt免费模板大 | h无码精品动漫在线观看导航 | 亚洲av综合色区无码一二三区 | 无码人妻精品一区二区三区夜夜嗨 | 国产精品乱子伦一区二区 | 欧美精品一区二区三区久久久精品 | 精品国产白嫩美女在线观看 | 国产乱码免费卡1卡二卡3卡四卡 | 91麻精品国产91久久久久 | 亚洲精品在线观看视频 | 国产精产国品一二三产区伦理电影 | 欧美一区二区三区久久成人 | 97青草香蕉依人在线视频 | 亚洲熟女www一区二区三区 | 国产免费a级在线观看 | 久久www| 91精品高跟丝袜在线 | 欧美又粗又大又爽又色片 | 成人色综合| 欧美丰腴丰满大屁股熟妇 | 无码人妻精品一区二区三区东 | 日韩亚洲人成 | а√天堂8资源中文在线 | 熟女俱乐部五十路二区av | 国产精品美女一区二区三区 | 国产精品国产三级国产v剧情 | 精人妻无码一区二区三区 | 亚洲国产精品午夜伦不卡 | 羞羞动漫成人a片在线观看 羞羞麻豆国产精品1区2区3区 | 色综合欧美 | 另类亚洲图区在线视频 | 国产日产亚洲精品 | 人妻少妇精品无码专区吞精 | 97碰碰碰人妻视频无码 | 久久福利资源网站免费看 | 在线观看成人中文字幕 | 国产99视频精品免费视看6 | 天天日天天爽 | 99久久久无码国产精品6 | 亚洲熟女少妇一区二区 | 日韩精品福利在线观看 | 亚洲欧美日韩国产精品专区四 | 国产激情免费 | 无遮挡1000部拍拍拍免费观看 | 无套内射gif舔b吃奶 | 国产在线观看香蕉视频网 | 中文字幕av影视精品不卡 | 久久99精品久久久久久 | 99久久久免费精品播放 | 日韩中文人妻无码不卡 | 色橹橹欧美在 | 亚洲精品国产综合一线久久 | 国产亚洲一级毛片 | 亚洲国产精品激情在线观看 | 91久久精品无码一区二区 | 三级高清久久影视 | 国产精品无码不卡一区二区三区 | 少妇人妻久久 | 国产区精品高清在线观看 | 国产精品自在线拍国产第一页 | av喷水高潮喷水在线观看c | 精品亚洲成a人片在线观看 精品亚洲成a人在线观看青青 | 花蝴蝶在线观看片3 | 熟妇人妻系列v无码一区二区 | 99久久er热在这里只有精品99 | 精品人妻少妇嫩草av无 | 91亚洲中文字幕在线播放 | 欧美人与禽zoz0性伦交 | 91原创国 | 中文字幕精品久久久久人妻红杏1 | 亚洲av无码av吞精久 | 国产爆乳美女娇喘呻 | 韩国大尺度电影愉情在线观看 | 在线欧美中文亚洲精品 | 亚洲av一点也不卡一区二区 | 欧美中国一级黄色网站 | 国自产精品手机在线观看视 | 欧美精品久久久久久久自慰 | 国产精品青青青高清在线观看 | 国产avcom | 国产suv精| 欧美一区二区三区日韩精品 | 日本成人电影中文字幕 | 成全在线 | 欧美aaaaa级毛卡片在线 | 日本wv一本 | 综合一区中亚洲国产成人综合精品 | 亚洲无线 | 无码熟妇人妻av在线影片最多 | 国产台湾无码av片在线观看 | 国产一级做美女做受 | 麻豆蜜桃国产精品无码视频 | 国产一区二区三区乱码福利 | 欧美日韩在线精品一区二区三区 | 亚洲综合在线日韩欧美 | 国产精品白丝喷水在线观看 | 91手机游戏大厅官网 | 中文字幕在线精品乱码高 | 亚洲精品ⅴ在线观看 | 一区二区免费视频中文乱码 | 国产精品白丝av在线观看播放 | 国产成人一区二区三区影 | 无码区国产 | 国产成人无码精品一区 | 国产一区二区精品久久小说 | 成人性生交大片 | 91精品国产麻豆国产自产在线 | av一级午夜无码久久精品 | 色国产精品一区在线观看 | 区二区三区在线 | 欧美精品top. | 午夜免费啪在线观看无码 | 91精品国产高清91 | 中文字幕无码永久 | a级久久久久久久久精 | 91精品在线播放视频大全在线观看 | 亚洲乱码中文字幕精品久久 | 亚洲女同成av人片在线观看 | 麻豆精品国产自产在线观看 | 午夜福利电影在线免费看 | 色吊丝av熟女中文字幕 | 亚洲av无码一区二区三区电影 | 精品久久久久久久久一起玩 | 三年在线观看免费观看 | 狠狠色综合久久丁香婷婷 | 人妖欧美一区二区三区四区 | 午夜福利理论片高清在线观看 | 国产av一区二区三区最新精品 | 99久久婷婷国产综合精品青草漫 | 亚洲国区二区三区 | а√天堂8资源中文在线 | 国产啪精品视频网给免丝袜 | 亚洲午夜福利精品无码不卡 | 成全视频观看高清在线观看 | 国产精品va无码一区二区三区 | 国产综合av一区二区三区无码 | 亚洲国产中文精品无码专区网站 | 成年女人免费v片 | 国产精品分类视频分类一区 | 精品国产一区二区三区不卡 | 午夜理伦三级理论三级 | 亚洲精品无码激情av | 日本中文字幕久久网站 | 日韩精品一区二区我不卡影 | 日韩精品一区二区三区蜜桃 | 狠狠色丁香九九婷婷综合五月 | 国产精品成久 | 亚洲阿v天堂| 国产爆乳尤妮丝无码视频在线 | 日韩毛片一级在线观看 | 国产免国产免‘费 | av在线播放| 精品国产自在在线在线观看 | 国产精品福利在线观看免费不卡 | 在线观看国产亚洲av | 色色福利| 97蜜桃电影在线观看 | 日韩成人精品一区二区三区 | 午夜精品一区二区三区在线观看 | 国产一区二区三区不卡在线观看 | 老司机亚洲精品 | 亚洲aⅴ永久无码天 | 午夜福利视频免费看片 | 国产麻豆一精品一av一免费软件 | 欧美三级中文字幕久久版 | 99久久婷婷国产综合亚洲 | 国产日韩av一区二区三区无码 | 国产精品无码无卡在线播放 | 亚洲av网站| 成人免费无遮挡在线播放 | 少妇无码av无码专区在线观看 | 黄色网站在线观看一级毛 | 日本在线免费观看视频 | a级大片免费观看 | 亚洲аv天堂手机版在线观看 | 激情另类小说区 | 91香蕉成人污污污在线观看 | 一区二区自拍中文字幕福 | 国产av大学生第一次破 | 99无套内射中出生娃视频 | 亚洲日本va中文字幕午夜福利 | 欧美交性又色又爽又黄 | 国产精品视频免费播放 | av性天堂高清在线观看一区二 | 91麻豆精品国产片在线观看 | 蜜臀91 | 午夜福利理论片高清在线 | 中文字幕中文有 | 国产草草影院ccyycom | 国产在线98福 | 四虎国产精品永久免费网址 | 国产精品人成在线观看 | 91精品综合久久久久 | 亚洲日本欧美中文字幕 | 内射无套内射国产精品视频 | 丝袜中出制服人妻美腿 | 国产成人精品台湾佬中文字幕 | 精品国产v一区二区三区 | 成人嘿嘿视频网站在线 | 天天综合网 | 亚洲av永久无码精品网站色欲 | 无码人妻精品一区二区三区99 | 国产在线观看私人影院 | 欧美日韩免费中文 | 国产精品热久久无码av | 日本三级网站在线观看 | 成年片免费观看网站免费观看 | 欧美日韩 | 精品亚洲国产专区在线观看 | 午夜天堂精品久久久久 | 亚洲日本va中文字幕亚洲 | 色欲av伊人 | 无码aⅴ精品一区二区三区浪潮 | 精品国产亚洲第一区二区三区 | 日本激情午夜在线电影观看 | 国产精品动漫一区二区在线观看 | 羞羞影院午夜男女爽爽免费 | 国产在线观看91精品 | 国产一级做a爰片久久毛片99 | 日韩人妻无码一区二区三区久久 | 97人人模人人爽人人喊 | 亚洲无码精品人妻无遮挡久久久九 | 国产人妻777人伦精品hd | 亚洲mv大片免费网站 | 亚洲av无码av吞精久 | 精品无码国产免费网站视频 | 国产精品亚洲av高清二区 | a毛片免费看 | 波多野结衣办公室双飞 | 亚洲欧美另类成人 | 黑人大战亚洲女在线播放 | 尤物视频不卡在线观看 | 91精品欧美激情在线播放 | 97水蜜桃视频在线观看 | 97国产在线公开免费观看 | 国产丰满xxx高潮国产 | 人妻丰满av | 亚洲av日韩av永久无码久 | 精品国产福利第一区二区三区 | 日本人妻一二三区 | 丰满大码的熟女在线视频 | 国产精品三级在线观看无码 | 91在线无精精品秘一区二区 | 中文精品久久久久 | 亚洲精品无码高潮喷水a片小说 | 国产精品一区二区av麻豆 | 在线观看国产污的网站 | 亚洲精品国产av成拍色拍 | 亚洲av无码专区亚洲av桃 | 中文字幕久久精品一区二区三区 | 久久99国产综合精品女同 | 亚洲精品专区无码 | 无码av天堂一区二区三区 | 对白在线播放 | 在线观看亚洲av日韩a∨ | 午夜精品国产爱在线观看不卡 | 亚洲av成人一区二区三区天堂 | 国产爆乳无码视频在线观看 | 国产激情久久久久影院小草 | 亚洲日本一区二区三区在线不 | av网站| 国产影院精品 | 国产精品亚洲v毛片一区二区 | 国产成人无码一区二区在线播放 | 成年女人免费碰碰视频 | 欧亚乱熟女一区二区三区在线 | 国产女主播喷水视频在线观看 | 午夜理论片无码 | 深夜a级毛片免费视频 | 国产精品v亚洲精品v日韩精品 | av无码精品久久久久精品免费 | 九九精品成人免费国产片 | 国产日韩手机在线不卡视频 | 亚洲av无码国产综合专区 | 国产99视频精品免费视频76 | 日韩v午夜视频在线观看 | 午夜欧美日韩精品久久久久久 | 动漫亚洲国产二区精品 | 日本aⅴ | 精品国产人成亚洲区 | 91与国产超碰在线手机观看 | 不卡无码福利一区二区 | 国产激情av一区二区三区 | 中文字幕在线观看国产 | 不卡一区二区视频日本 | 精品国产一区av天美传媒 | 99久久免费视频6 | 91成人试看福 | 亚洲视频国产精品 | 亚洲中文字幕久久精品无码喷水 | 久久www香蕉免费人成 | 成人天堂资源www在线 | 国产精品毛片完整版视 | 亚洲一区二区三区国产精品无 | 四虎永久在线精品波多野结衣 | 无忧影院 | 无码免费真人久久 | 国产精品一卡二卡三卡 | 精品久久久久久久久久 | 国产午夜精品一区二区三区四区 | 一区二区三区欧美日韩 | 黑人好猛厉害爽受不 | 91福利国产视频 | 无码欧精品 | 91精品在线播放视频大全在线观看 | 国产激情三级在线观看 | 欧美性色xxxxⅹooo | 国产热a欧美热a在线视频 | 亚洲一成人 | 国产97碰免费视频 | 九九热视频免费在线观看 | 国产亚洲人成在线v网站 | 国产免费久久精品99久久 | 亚洲日本aⅴ片在线观看香蕉 | 久久99精| 在线观看国产精品乱码app | 日本啪视频在线观看精品综合 | 二区久久hs | 色综合久久久久久久久久 | 国产啪精品视频网给免丝袜 | 国内精品自线一区二区三区 | 成人精品一区二区三区不卡免费看 | 国产白丝无码免费视频 | 三区四区五区高 | 一级在线观看影片 | 国自产精品手机在线观看 | 国产脚交视频在线观看 | 国产精品一区在线蜜臀 | 国产亚洲色婷婷久久99精品91 | 无码任你躁久久久久久老妇双奶 | 国产精品三级国语在线看 | 91成人啪国产啪永久地址 | 无码国产精成人午夜视频一区二区 | av香港三级级在线 | 最新国产剧大全免费在线观看 | 亚洲av无码免费成人av | 日韩熟女少妇av | 91麻精品国产91久久久久 | 在线天堂8高清版在线观看 在线天堂官网 | 无码aⅴ精品一区二区三区浪潮 | 无码激情精品专区在线观看 | 午夜成人精品视频观看 | 无码人妻一区二区三区免费看 | 国产一区二区精品久久 | 国产精品机视频大陆 | 国产一二三区视频 | 亚洲精品无码观看 | 欧美精品人人做人人爱视频 | 国产欧美日韩综合精品久久一 | 国产av性爱亚洲 | 深夜免费网站一区在线观看 | 日本xxxx高清色视频在线播放 | 在线精品免费视频无码的 | 99成人国产精品视频 | 精品无码一区二区三区东京热 | 亚洲国产成人久久99精品 | av在线一区二区三区 | 无码激情精品专区在线观看 | 日韩福利 | 亚洲成av人影院无码不卡 | 成人揄拍免费视频 | 亚洲成aⅴ人片在线观看无码 | 99ri视频一区二区三区 | 欧美精品aⅴ在线视频 | 午夜精品久 | 黄色视频日本wwwww | 精品粉嫩| 婷婷综合在线观 | 国产高清无码一区二区 | 精品国产一 | 国产三级深夜精品视频 |