青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

woaidongmao

文章均收錄自他人博客,但不喜標(biāo)題前加-[轉(zhuǎn)貼],因其丑陋,見(jiàn)諒!~
隨筆 - 1469, 文章 - 0, 評(píng)論 - 661, 引用 - 0
數(shù)據(jù)加載中……

#import 指令

 

#import 指令

C++特殊處

#import指令用于從一個(gè)類型庫(kù)中結(jié)合信息。該類型庫(kù)的內(nèi)容被轉(zhuǎn)換為C++,主要用于描述COM界面。

語(yǔ)法

#import "文件名" [屬性]

#import <文件名> [屬性]

屬性:

屬性1,屬性2,...

屬性1 屬性2 ...

文件名是一個(gè)包含類型庫(kù)信息的文件的名稱。一個(gè)文件可為如下類型之一:

* 一個(gè)類型庫(kù)(.TLB.ODL)文件。

* 一個(gè)可執(zhí)行(.EXE)文件。

* 一個(gè)包含類型庫(kù)資源(.OCX)的庫(kù)文件(.DLL)。

* 一個(gè)包含類型庫(kù)的復(fù)合文檔。

* 其它可被LoadTypeLib API支持的文件格式。

文件名之前可以有一個(gè)目錄規(guī)格。文件名必須是一個(gè)已存在文件的名稱。兩種格式的區(qū)別是當(dāng)路徑未完全說(shuō)明時(shí),預(yù)處理器檢索類型庫(kù)文件的順序不同。

動(dòng)作

語(yǔ)法格式

引號(hào)格式 這種格式讓預(yù)處理器首先搜索與包含#import語(yǔ)句的文件同一目錄的類型庫(kù)文件,然后在所有包括(#include)該文件的目錄中搜索,最后在如下路徑中搜索

尖括號(hào)格式 這種格式指示預(yù)處理器沿以下路徑搜索類型庫(kù)文件

編譯器在以下目錄中搜索已命名的文件:

1. PATH環(huán)境變量路徑表。

2. LIB環(huán)境變量路徑表。

3. /I(額外的包括目錄)編譯器選項(xiàng)指定的路徑。#import可以任選地包含一個(gè)或多個(gè)屬性。這些屬性使編譯器改變類型庫(kù)頭文件的內(nèi)容。一個(gè)反斜杠(\)符可用在一個(gè)單一的#import語(yǔ)句中包含額外的行,例如:

#import "test.lib" no_namespace \

rename("OldName","NewName")

#import屬性列出如下:

exclude

high_method_prefix

high_property_prefixes

implementation_only

include(...)

inject_statement

named_guids

no_auto_exclude

no_implementation

no_namespace

raw_dispinterfaces

raw_interfaces_only

raw_method_prefix

raw_native_types

raw_property_prefixes

rename

rename_namespace

 

#import指令可創(chuàng)建兩個(gè)在C++源代碼中重構(gòu)類型庫(kù)內(nèi)容的頭文件,第一個(gè)頭文件和用Microsoft接口定義語(yǔ)言(MIDL)編譯器生成的頭文件類似,但有額外的編譯器生成代碼和數(shù)據(jù)。第一個(gè)頭文件與類型庫(kù)有相同的基本名,其擴(kuò)展名為.TLH。第二個(gè)頭文件也有與類型庫(kù)相同的基本名,其擴(kuò)展名為.TLI。它包括了編譯器生成成員函數(shù)的實(shí)現(xiàn),且被包含在(#include)的第一個(gè)頭文件內(nèi)。

兩個(gè)頭文件都在用/Fo(命名對(duì)象文件)選項(xiàng)指定的輸出目錄中。隨后它們被讀出和編譯,就像第一個(gè)頭文件被#include指令命名一樣。

以下是伴隨#import指令的編譯器優(yōu)化:

* 頭文件被創(chuàng)建時(shí),將被分配與類庫(kù)相同的時(shí)間標(biāo)志。

* 處理#import時(shí),編譯器首先測(cè)試頭文件是否存在,是否過(guò)期。若條件為真,就不需重新創(chuàng)建。

* 編譯器延遲對(duì)于OLE子系統(tǒng)的初始化,直到碰到第一個(gè)#import命令。

#import指令也可參與最小重建且可被置于一個(gè)預(yù)編譯頭文件中。

基本類型庫(kù)頭文件

基本類型庫(kù)頭文件由七個(gè)部分組成:

1. 頭部固定正文:由注釋、COMDEF.H(定義用在頭部的一些標(biāo)準(zhǔn)宏)#include語(yǔ)句和其它繁雜的安裝信息組成。

2.前向引用和類型定義:由象struct IMyinterface之類的結(jié)構(gòu)說(shuō)明和用于一些TKIND_ALIAS項(xiàng)的類型定義組成。

3.靈敏指針說(shuō)明:模塊類_com_ptr_t是一個(gè)封裝接口指針和消除調(diào)用AddRef、Release QueryInterface函數(shù)需求的靈敏指針實(shí)現(xiàn)。此外,它隱藏了創(chuàng)建一個(gè)新COM對(duì)象中的CoCreateInstance調(diào)用。此部分采用宏語(yǔ)句_COM_SMARTPTR_TYPEDEFCOM接口的類型定義創(chuàng)建為_com_ptr_t模板類的模板特例化。例如,對(duì)于界面IFoo,.TLH文件包含有:

_COM_SMARTPTR_TYPEDEF(IFoo,_ _uuidof(IFoo));

編譯器將其擴(kuò)展為:type def _com_ptr_t<_com_IIID<IFoo,_ _uuidof(IFoo) >> IFooPtr;

類型IFooPtr可以用在原始的界面指針IFoo*的地方。結(jié)果,就不需調(diào)用各種IUnknown成員函數(shù)。

4. 類型信息(typeinfo)說(shuō)明:主要由類定義和其它項(xiàng)組成,這些項(xiàng)說(shuō)明由ITyptLib:GetTypeInfo返回的單個(gè)的信息類型項(xiàng)目。在這部分,每個(gè)來(lái)自于類型庫(kù)的信息類型都以一種依賴于TYPEKIND信息的格式反映在該頭部。

5. 任選舊式GUID定義:包含命名的GUID常量的初始化過(guò)程,這些定義是格式CLSID_CoClassIID_Interface的名稱,與那些由MIDL編譯器產(chǎn)生的類似。

6. 用于第二個(gè)類型庫(kù)頭部的#include語(yǔ)句。

7. 結(jié)尾固定正文:目前包括#pragma pack(pop)。

以上這些部分除頭部固定正文和結(jié)尾固定正文部分之外,都被包括在原來(lái)的IDL文件中以library語(yǔ)句指定其名稱的名稱空間中。你可以通過(guò)用名稱空間顯式限定或包括如下語(yǔ)句從類型庫(kù)頭部使用該名稱。

using namespace MyLib

在源代碼的#import語(yǔ)句之后立即

名稱空間可用#import指令的no_namespace屬性來(lái)阻止。但阻止的名稱空間可能導(dǎo)致名稱沖突。名稱空間也可用rename_namespace屬性重新?lián)Q名。

編譯器提供完全路徑給需要依賴當(dāng)前正在處理的類型庫(kù)的任何類型庫(kù)。路徑以注釋格式寫(xiě)入到由編譯器為每個(gè)處理的類型庫(kù)生成的類型庫(kù)頭部(.TLH)

如果一個(gè)類型庫(kù)包含了對(duì)其它類型庫(kù)定義的類型引用,.TLH文件將包括以下注釋:

//

//Cross-referenced type libraries:

//

//#import "c:\path\typelib0.tlb"

//

#import注釋中的實(shí)際文件名是存儲(chǔ)在寄存器中交叉引用的類型庫(kù)全路徑。如果你遇到由于省略類型定義的錯(cuò)誤時(shí),檢查.TLH頭部的注釋,看哪一種依賴類型庫(kù)需要先輸入。在編譯該.TLI文件時(shí)可能的錯(cuò)誤有語(yǔ)法錯(cuò)誤(例如C2143,C2146,C2321)、C2501(缺少說(shuō)明指示符)C2433(在數(shù)據(jù)說(shuō)明中禁止′inline′)。

你必須確定哪些依賴注釋是不被系統(tǒng)頭部給出的,而是在依賴類型庫(kù)的#import指令前的某處給出一個(gè)#import指令以消除這些錯(cuò)誤。

exclude屬性exclude(“1”[,“名稱2”,...])

名稱1

被排斥的第一個(gè)項(xiàng)

名稱2

被排斥的第二個(gè)項(xiàng)(如有必要)

類型庫(kù)可能包含在系統(tǒng)頭部或其它類型庫(kù)內(nèi)定義的項(xiàng)的定義。該屬性可用于從生成的類型庫(kù)頭文件中排斥這些項(xiàng)。這個(gè)屬性可帶任意數(shù)目的參量,每個(gè)參量是一個(gè)被排斥的高級(jí)類型庫(kù)項(xiàng)目:

high_method_prefix屬性

high_method_prefix("Prefix")

Prefix

被使用的前綴

在缺省的情況下,高級(jí)錯(cuò)誤處理屬性和方法用一個(gè)無(wú)前綴命名的成員函數(shù)來(lái)展示。這個(gè)名稱來(lái)自于類型庫(kù)。high_method_prefix屬性說(shuō)明一個(gè)前綴以用于命名這些高級(jí)屬性和方法。

high_property_prefixes屬性

high_property_prefixes("GetPrefix,""PutPrefix""PutRefPrefix")

GetPrefix

用于propget方法的前綴

PutPrefix

用于propput方法的前綴

PutRefPrefix

用于propputref方法的前綴

在缺省情況下,高級(jí)錯(cuò)誤處理方法,propgetpropputpropputref,分別采用以前綴Get、PutPutRef命名的成員函數(shù)來(lái)說(shuō)明。high_property_prefixes屬性用于分別說(shuō)明這三種屬性方法的前綴。

implementation_only屬性

implementation_only屬性禁止.TLH頭文件(基本頭文件)的生成。這個(gè)文件包括了所有用于展示類型庫(kù)內(nèi)容的說(shuō)明。該.TLI頭文件和wrapper成員函數(shù)的實(shí)現(xiàn),將被生成且包含在編譯過(guò)程中。

當(dāng)指定該屬性時(shí),.TLI頭部的內(nèi)容將和用于存放普通.TLH頭部的內(nèi)容放在相同的名稱空間。此外,該成員函數(shù)不會(huì)作為聯(lián)編說(shuō)明。implementation_only屬性一般希望與no_implementation屬性配對(duì)使用,以跟蹤預(yù)編譯頭文件(PCH)之外的實(shí)現(xiàn)。一個(gè)有no_implementation屬性的#import語(yǔ)句被置于用來(lái)創(chuàng)建pch的源區(qū)域中,結(jié)果PCH將被一些源文件所用。一個(gè)帶implementation_only屬性的#import語(yǔ)句隨后被用在PCH區(qū)域之外。在一個(gè)源文件里只需用一次這種語(yǔ)句。這將生成不需對(duì)每個(gè)源文件進(jìn)行額外重編譯的所有必要的wrapper成員函數(shù)。

注意:一個(gè)#import語(yǔ)句中的implementation_only屬性必須和相同類型庫(kù)中no_implementation屬性的另一個(gè)#import語(yǔ)句配套使用。否則,將產(chǎn)生編譯錯(cuò)誤。這是因?yàn)閹?span lang="EN-US">no_implementation屬性的#import語(yǔ)句生成的wrapper類定義需要編譯implementation_only屬性生成的語(yǔ)句實(shí)現(xiàn)。

include(...)屬性

Include(名稱1[,名稱2,...])

名稱1

第一個(gè)被強(qiáng)制包含的項(xiàng)

名稱2

第二個(gè)被強(qiáng)制包含的項(xiàng)(如果必要)

類型庫(kù)可能包含在系統(tǒng)頭部或其它類型庫(kù)中定義的項(xiàng)的定義。#import指令試圖用自動(dòng)排斥這些項(xiàng)來(lái)避免多重定義錯(cuò)誤。若這些項(xiàng)已經(jīng)被排斥,象警告C4192所指出的那樣,且它們不應(yīng)該被排斥,則這個(gè)屬性可用于禁止自動(dòng)排斥。該屬性可帶任意數(shù)目的參量,每個(gè)參量應(yīng)是被包括的類型庫(kù)項(xiàng)的名稱。

inject_statement屬性

inject_statement("source_text")

source_text

被插入到類型庫(kù)頭文件的源文本。

inject_statement屬性將其參量作為源文本插入類型庫(kù)頭部。此文本被置于包括頭文件中類型庫(kù)內(nèi)容的名稱空間說(shuō)明的起始處。

named_guids屬性

named_guids屬性讓編譯器定義和初始化模板LIBID_MyLibCLSID_MyCoClassIID_MyInterfaceDIID_MyDispInterface的舊式格式的GUID變量。

no_implementation屬性

該屬性阻止.TLI頭文件的生成,這個(gè)文件包含wrapper成員函數(shù)的實(shí)現(xiàn)。如果指定這個(gè)屬性,則展示類型庫(kù)項(xiàng)說(shuō)明的.TLH頭將生成沒(méi)有一個(gè)#include語(yǔ)句包括該.TLI頭文件。

該屬性與implementation_only屬性配套使用。

no_auto_exclude屬性

類型庫(kù)可能包括在系統(tǒng)頭部或其它類型庫(kù)中定義的項(xiàng)的定義。#import試圖通過(guò)自動(dòng)排斥這些項(xiàng)來(lái)避免多重定義錯(cuò)誤。當(dāng)這樣做時(shí),每個(gè)被排斥的項(xiàng)都將生成一個(gè)C4192警告信息。你可禁止這個(gè)屬性使用自動(dòng)排斥。

no_namespace屬性

#import頭文件中的類型庫(kù)內(nèi)容一般定義在一個(gè)名稱空間里。名稱空間的名稱在原來(lái)IDL文件的library語(yǔ)句中指定。如果指定no_namespace屬性,編譯器就不會(huì)生成這個(gè)名稱空間。

如果你想使用一個(gè)不同的名稱空間,應(yīng)代替使用rename_namespace屬性。

raw_dispinterfaces屬性

raw_dispinterfaces屬性讓編譯器生成一個(gè)低級(jí)wrapper函數(shù)。該函數(shù)用于調(diào)用IDispatch::Invoke和返回HRESULT錯(cuò)誤代碼的dispinterface方法和屬性。如果未指定此屬性,則只生成高級(jí)wrapper,它在失敗時(shí)丟棄該C++異常。

raw_interfaces_only屬性

raw_interfaces_only屬性禁止生成錯(cuò)誤處理wrapper函數(shù)以及使用這些wrapper函數(shù)的_ _declspec(屬性)說(shuō)明。

raw_interfaces_only屬性也導(dǎo)致刪除在命名non__property函數(shù)中的缺省前綴。通常該前綴是raw_。若指定此屬性,函數(shù)名稱將直接從類型庫(kù)中生成。該屬性只允許展示類型庫(kù)的低級(jí)內(nèi)容。

raw_method_prefix屬性

raw_method_prefix("Prefix")

Prefix

被使用的前綴

raw_作為缺省前綴的成員函數(shù)展示低層屬性和方法,以避免與高級(jí)錯(cuò)誤處理成員函數(shù)的名稱沖突。raw_method_prefix屬性用于指定一個(gè)不同的前綴。注意: raw_method_prefix屬性的效果不會(huì)因raw_method_prefix屬性的存在而改變。在說(shuō)明一個(gè)前綴時(shí),raw_method_prefix總是優(yōu)先于raw_interfaces_only。若兩種屬性用在同一個(gè)#import語(yǔ)句中時(shí),則采用raw_method_prefix指定的前綴。

raw_native_types屬性

在缺省情況下,高級(jí)錯(cuò)誤處理方法在BSTRVARIANT數(shù)據(jù)類型和原始COM界面指針的地方使用COM支持類_bctr_t_variant_t。這些類封裝了分配和取消分配這些數(shù)據(jù)類型的存儲(chǔ)器存儲(chǔ)的細(xì)節(jié),并且極大地簡(jiǎn)化了類型造型和轉(zhuǎn)換操作。raw_native_types屬性在高級(jí)wrapper函數(shù)中禁止使用這些COM支持類,并強(qiáng)制替換使用低級(jí)數(shù)據(jù)類型。

raw_property_prefix屬性

raw_property_prefix("GetPrefix","PutPrefix","PutRefPrefix")

GetPrefix

用于propget方法的前綴

PutPrefix

用于propput方法的前綴

PutRefPrefix

用于propputref方法的前綴

在缺省情況下,低級(jí)方法propgetpropputpropputref分別用后綴為get_put_putref_的成員函數(shù)來(lái)展示。這些前綴與MIDL生成的頭文件中的名稱是兼容的。raw_property_prefixes屬性分別用于說(shuō)明這三個(gè)屬性方法的前綴。

rename屬性

rename("OldName,""NewName")

OldName

類型庫(kù)中的舊名

NewName

用于替換舊名的名稱

rename屬性用于解決名稱沖突的問(wèn)題。若該屬性被指定,編譯器將在類型庫(kù)中的OldName的所有出現(xiàn)處用結(jié)果頭文件中用戶提供的NewName替換。

此屬性用于類型庫(kù)中的一個(gè)名稱和系統(tǒng)頭文件中的宏定義重合時(shí)。若這種情況未被解決,則將產(chǎn)生大量語(yǔ)法錯(cuò)誤,C2059C2061。

注意:這種替換用于類型庫(kù)的名稱,而不是用于結(jié)果頭文件中的名稱。

這里有一個(gè)例子:假設(shè)類型庫(kù)中有一個(gè)名稱為MyParent的屬性,且頭文件中定義了一個(gè)用在#import之前的宏GetMyParent。由于GetMyParent是用于錯(cuò)誤處理屬性get的一個(gè)wrapper函數(shù)的缺省名稱,所以將產(chǎn)生一個(gè)名稱沖突。為解決這個(gè)問(wèn)題,使用#import語(yǔ)句中的以下屬性:

rename("MyParent","MyParentX")

該語(yǔ)句將重新命名類型庫(kù)中的名稱MyParent,而試圖重新命名GetMyParentwrapper名稱將會(huì)出錯(cuò):

rename("GetMyParent","GetMyParentX")

這是因?yàn)槊QGetMyParent只出現(xiàn)在結(jié)果類型庫(kù)頭文件中。

rename_namespace屬性

rename_namespace("NewName")

NewName

名稱空間的新名稱

rename_namespace屬性用于重新命名包含類型庫(kù)內(nèi)容的名稱空間。它帶有一個(gè)指定名稱空間新名newname的參量。

消除名稱空間可以使用no_namespace屬性。

C++特殊處結(jié)束

 

posted on 2011-01-10 16:56 肥仔 閱讀(5172) 評(píng)論(0)  編輯 收藏 引用 所屬分類: COM

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲福利免费| 老司机aⅴ在线精品导航| 午夜精品久久久久久久久久久久久 | 欧美日韩亚洲一区二区三区| 欧美激情精品久久久久久变态 | 亚洲社区在线观看| 亚洲视频在线二区| 欧美一区二区| 久久久久一本一区二区青青蜜月| 久久久人成影片一区二区三区| 久久综合中文| 麻豆亚洲精品| 亚洲人永久免费| 一区二区三区色| 久久av红桃一区二区小说| 久久人91精品久久久久久不卡| 免费成人黄色| 国产精品推荐精品| 亚洲三级视频| 小黄鸭精品密入口导航| 模特精品在线| 国产精品99久久久久久有的能看 | 影音欧美亚洲| 亚洲视频图片小说| 久久视频精品在线| 亚洲毛片av在线| 小黄鸭视频精品导航| 欧美精品久久天天躁| 国产老肥熟一区二区三区| 亚洲三级国产| 老司机凹凸av亚洲导航| 亚洲午夜激情免费视频| 男人的天堂亚洲| 国产一区二区三区久久久久久久久| 亚洲免费成人| 欧美xart系列高清| 欧美在线观看一区| 国产精品久久久亚洲一区| 亚洲精品国产精品国自产在线| 久久精品欧洲| 亚洲免费小视频| 欧美日韩中文字幕在线视频| 亚洲国产精品久久91精品| 欧美亚洲一区三区| 亚洲素人在线| 国产精品不卡在线| 99国产麻豆精品| 欧美激情亚洲另类| 久久嫩草精品久久久精品| 国产美女扒开尿口久久久| 亚洲尤物视频网| 亚洲免费av片| 欧美人妖在线观看| 亚洲精品视频在线播放| 欧美电影电视剧在线观看| 亚洲综合色婷婷| 国产毛片精品视频| 欧美中文字幕在线观看| 亚洲欧美日韩国产中文在线| 国产精品成人免费| 亚洲欧美激情精品一区二区| 99精品视频免费观看| 欧美日韩另类字幕中文| 亚洲性色视频| 亚洲一级免费视频| 欧美日韩一二三区| 亚洲欧美在线高清| 久久久久免费视频| 久久久国产91| 国内精品久久久久久| 久久久一二三| 另类尿喷潮videofree| 一区二区三区在线视频播放| 美女91精品| 女同一区二区| 99天天综合性| 一区二区三区四区五区在线| 国产精品久久久久久久app| 亚洲欧美中日韩| 欧美在线观看网址综合| 亚洲成色精品| 99国产精品国产精品久久| 欧美丝袜第一区| 欧美伊人久久大香线蕉综合69| 欧美一级视频| 亚洲欧洲综合另类| 99热这里只有成人精品国产| 国产欧美日韩另类一区| 久久久www成人免费毛片麻豆 | 国产精品v欧美精品v日本精品动漫| 亚洲欧美日本另类| 久久精品国产69国产精品亚洲 | 久久久久久久波多野高潮日日| 久久久精品视频成人| 99国产精品久久久久久久成人热| 国产精品99久久不卡二区| 在线观看视频一区二区| 99成人免费视频| 激情综合激情| 99在线热播精品免费| 国产三级欧美三级日产三级99| 欧美黄色精品| 国产精品国产三级欧美二区| 免费成人网www| 国产精品亚洲а∨天堂免在线| 亚洲第一区在线观看| 国产麻豆综合| 亚洲精品资源| 在线播放精品| 亚洲天堂久久| 亚洲精品一区二区三区蜜桃久| 亚洲欧美成人| 99日韩精品| 美女精品一区| 久久色在线观看| 国产欧美日韩综合一区在线播放| 欧美高清在线精品一区| 国产视频自拍一区| 亚洲一区二区精品| 一本色道久久综合狠狠躁篇的优点| 午夜精品视频在线| 亚洲影视在线播放| 欧美激情精品久久久六区热门 | 亚洲美女性视频| 久久人91精品久久久久久不卡| 国产欧美日韩视频| 亚洲激情网站| 91久久精品www人人做人人爽| 欧美在线观看网站| 久久激五月天综合精品| 国产精品成人一区二区网站软件| 亚洲精品少妇30p| 亚洲黄色影片| 欧美韩日一区二区三区| 欧美激情亚洲精品| 亚洲毛片网站| 欧美日韩一二三区| 亚洲美女视频在线观看| 一本一本久久a久久精品牛牛影视| 欧美精品久久99| 亚洲靠逼com| 亚洲欧美成人网| 国产精品爽黄69| 午夜在线视频一区二区区别| 久久久国产91| 影音先锋久久久| 欧美激情一级片一区二区| 亚洲精选一区| 午夜精品一区二区三区电影天堂 | 六月婷婷久久| 亚洲欧洲在线看| 国产精品99久久久久久久女警 | 国产精品高潮呻吟久久| 小嫩嫩精品导航| 免费国产一区二区| 最新精品在线| 欧美日韩免费观看一区二区三区| 99精品视频免费观看视频| 午夜精品三级视频福利| 激情成人综合网| 最近中文字幕mv在线一区二区三区四区 | 免费日韩av片| 亚洲日本中文字幕免费在线不卡| 欧美激情91| 亚洲男人影院| 免费成人性网站| av不卡免费看| 国产亚洲精品综合一区91| 美女精品在线| 中文精品视频一区二区在线观看| 久久久久久色| 一区二区三区精品| 国产一区亚洲一区| 欧美巨乳在线| 午夜伦理片一区| 亚洲精品一区二区三区蜜桃久| 久久av红桃一区二区小说| 亚洲国产日韩欧美| 国产精品日韩高清| 欧美电影在线观看| 欧美一进一出视频| 亚洲剧情一区二区| 美女露胸一区二区三区| 亚洲自拍另类| 最新日韩在线视频| 国产亚洲一区在线| 欧美涩涩网站| 欧美成人激情在线| 久久精品成人欧美大片古装| 99国产精品久久久| 欧美激情一区二区三区成人| 欧美一区二区三区日韩视频| 欧美日韩精品免费观看| 欧美在线观看网址综合| 一本色道久久综合亚洲精品婷婷 | 欧美一级夜夜爽| 中文一区二区在线观看| 最近中文字幕mv在线一区二区三区四区 | 欧美日韩一区在线观看| 久久综合成人精品亚洲另类欧美|