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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > C# >内容正文

C#

如果你也会C#,那不妨了解下F#(5):模块、与C#互相调用

發(fā)布時(shí)間:2023/12/4 C# 71 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如果你也会C#,那不妨了解下F#(5):模块、与C#互相调用 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

F# 項(xiàng)目

在之前的幾篇文章介紹的代碼都在交互窗口(fsi.exe)里運(yùn)行,但平常開發(fā)的軟件程序可能含有大類類型和函數(shù)定義,代碼不可能都在一個(gè)文件里。下面我們來看VS里提供的F#項(xiàng)目模板。

F#項(xiàng)目模板有以下幾種類型(以VS2015為例):?

  • Silverlight庫(kù)創(chuàng)建Silverlight的類庫(kù)

  • 教程模板是一個(gè)控制臺(tái)應(yīng)用程序,里面包含了F#的示例,可通過這個(gè)項(xiàng)目快速了解F#相關(guān)內(nèi)容。

  • “可移植庫(kù)”則可創(chuàng)建用于多平臺(tái)的庫(kù),支持的平臺(tái)在括號(hào)里說明。

  • 庫(kù)”用于創(chuàng)建類庫(kù)

  • 控制臺(tái)應(yīng)用程序”大家就熟悉了。

  • 安卓項(xiàng)目為安裝了Xamarin創(chuàng)建的,請(qǐng)忽略。

我們創(chuàng)建一個(gè)控制臺(tái)應(yīng)用程序來說明,下圖為程序的Program.fs文件及運(yùn)行結(jié)果:

我們添加一行代碼(圖中藍(lán)框中)防止運(yùn)行結(jié)束自動(dòng)退出,這個(gè)應(yīng)用程序默認(rèn)是把參數(shù)打印出來,而運(yùn)行時(shí)參數(shù)為空,所以結(jié)果為一空數(shù)組([||])。

其中ignore函數(shù)用于丟棄System.Console.ReadKey()結(jié)果。

現(xiàn)在項(xiàng)目中除了AssemblyInfo.fs外,只有Program.fs一個(gè)文件,下面我們先了解模塊的相關(guān)信息再創(chuàng)建其他文件。

模塊

模塊簡(jiǎn)介

模塊(Module)是F#程序代碼的基本組織單位。默認(rèn)情況下,每個(gè)F#代碼文件(后綴為.fs)對(duì)應(yīng)一個(gè)模塊,且必須在文件開頭指定模塊名稱。

創(chuàng)建模塊

我們創(chuàng)建File1.fs文件時(shí),默認(rèn)會(huì)在開頭添加module?File1,當(dāng)然也可自己改成其他名稱。

module File1let x = 1

在其他模塊中使用File1.x進(jìn)行訪問。

文件順序

F#項(xiàng)目中的文件是有順序要求的,在上面的文件無法訪問下面的模塊。我們可以使用Alt+上/下箭頭進(jìn)行調(diào)整文件順序,或在文件上點(diǎn)擊右鍵進(jìn)行操作:?

嵌套模塊

模塊中可嵌套模塊,但定義內(nèi)層模塊需要在模塊名后使用等號(hào)(=),且內(nèi)層模塊的內(nèi)容必須比它的上層模塊縮進(jìn)一級(jí)。

module TopLevelModel ? ? ? ?module NestedModule = ? //第一層嵌套模塊let i = 1module NestedModuleInNestedModule = ?//第二層嵌套模塊let i = 2

使用模塊

若想不使用模塊名訪問模塊中的值時(shí),則可使用open關(guān)鍵字進(jìn)行打開。但有兩個(gè)需要注意的地方:

強(qiáng)制顯示訪問

在上一章介紹的集合模塊中,我們從未使用open List或者open Seq這樣的操作。

使用F12轉(zhuǎn)到Seq的代碼定義文件可以發(fā)現(xiàn)Seq模塊使用了
[<RequireQualifiedAccess>](強(qiáng)制顯示訪問)

附加了此特性的模塊在使用時(shí)必須使用模塊名訪問,因?yàn)閹讉€(gè)集合模塊中有大部分函數(shù)名稱是相同的,若設(shè)置此特性而可同時(shí)打開了多個(gè)模塊,則函數(shù)名稱將會(huì)沖突。

自動(dòng)打開

而我們?cè)谑褂胮rintfn和ignore函數(shù)時(shí),均不需要打開相關(guān)模塊,是因?yàn)樵谒麄兯鶎倌K附加了[<AutoOpen>](自動(dòng)打開)的特性。像Operators模塊里有我們常用的運(yùn)算符,為了方便使用,添加了自動(dòng)打開的特性。

我們?cè)谧远x模塊時(shí)可根據(jù)需要使用這兩個(gè)特性。

命名空間

命名空間(Namespace)和模塊類似,不同的是命名空間里不能直接定義值,只能定義類型。(與C#中的命名空間一樣,可以想象我們無法在C#的命名空間中直接定義一個(gè)方法,而需要首先定義一個(gè)類。)

但F#中的命名空間不能像模塊那樣嵌套,但可以在同一文件中定義多個(gè)命名空間。

namespace PlayingCardstype Suit = Spade | Club | Diamond | Heartnamespace PlayingCards.Pokertype PokerPlayer = {Name:string; Money:int; Position:int}

上面的代碼在一個(gè)文件中使用兩個(gè)命名空間分別定義了一個(gè)類型。

其中Suit為可區(qū)分聯(lián)合(Discriminated Union)類型;PokerPlayer為記錄(Record)類型。將在下一篇介紹。

應(yīng)用程序入口

在F#中,程序從程序集的最后一個(gè)文件開始執(zhí)行,而且必須是一個(gè)模塊。但最后一個(gè)模塊的名稱可省略

也可以使用[<EntryPoint>]特性應(yīng)用于最后一個(gè)代碼文件的最后一個(gè)函數(shù),使其成為程序入口點(diǎn)而無需顯示調(diào)用。

可查看控制臺(tái)應(yīng)用程序項(xiàng)目的模板:

[<EntryPoint>]let main argv = ? ? printfn "%A" argv ? ?0

main函數(shù)的參數(shù)是一個(gè)數(shù)組(通常可自定義為字符串?dāng)?shù)組),是應(yīng)用程序的運(yùn)行參數(shù),返回的整數(shù)則為程序的退出代碼(exit code)。

若不使用[<EntryPoint>],則需要在最后調(diào)用該函數(shù),否則并不會(huì)自動(dòng)調(diào)用該函數(shù)。

let main (argv:string[]) = printfn "%A" argvSystem.Console.ReadKey(true) |> ignore ? ?0main [||]

控制臺(tái)應(yīng)用程序通常在結(jié)束之前使用System.Console.ReadKey()方法來防止運(yùn)行完成自動(dòng)退出。

擴(kuò)展模塊

可以通過創(chuàng)建一個(gè)同名模塊,在其中添加值來對(duì)原有模塊進(jìn)行擴(kuò)展。

在介紹常用函數(shù)時(shí),我們提到Seq模塊沒有提供rev函數(shù),現(xiàn)在自己實(shí)現(xiàn)以對(duì)Seq模塊進(jìn)行擴(kuò)展

open System.Collections.Genericmodule Seq = ? ?/// 反轉(zhuǎn)Seq中的元素let rec rev (s : seq<'a>) = ? ? ? ?let stack = new Stack<'a>()s |> Seq.iter stack.Pushseq { ? ? ? ? ? ?while stack.Count > 0 doyield stack.Pop()}

其中使用了.NET框架中的泛型集合類型(System.Collections.Generic.Stack<T>)。

與C#互相調(diào)用

F#代碼和C#代碼(包括VB.NET)一樣,都編譯成MSIL,在CLR運(yùn)行。(可參考文章《.NET框架》)所以,兩種語(yǔ)言之間可以方便地互相調(diào)用。

程序集的引用大家都熟悉,但C#和F#中又有一些獨(dú)立的東西不能互相使用,下面簡(jiǎn)單介紹一下在互相調(diào)用中常見的問題。

F#調(diào)用C#代碼

本節(jié)涉及操作需要?jiǎng)?chuàng)建兩個(gè)項(xiàng)目,一個(gè)C#的類庫(kù)項(xiàng)目,一個(gè)F#的控制臺(tái)項(xiàng)目。然后F#項(xiàng)目引用C#項(xiàng)目。

dynamic:在F#中訪問C#的動(dòng)態(tài)類型

在.NET4.0,C#引入了dynamic關(guān)鍵字使得可以像使用動(dòng)態(tài)語(yǔ)言一樣來使用C#。但在F#中并不支持dynamic關(guān)鍵字和動(dòng)態(tài)類型,在引用C#編譯的程序集時(shí),則變成了Object類型。

我們知道dynamic在Microsoft.CSharp.dll程序集中實(shí)現(xiàn),在F#中可以通過引用此程序集,通過反射等操作自己實(shí)現(xiàn)對(duì)動(dòng)態(tài)類型及屬性的訪問。

而我在平常一般使用第三方庫(kù)FSharp.Interop.Dynamic(Nuget)。代碼示例:

//C#代碼,命名空間CSharpForFSharppublic class CSharpClass{ ?public dynamic TestDynamic() ?{ ? ?return "5566";} }

在F#中調(diào)用:

//F#代碼,位于F#項(xiàng)目的Program.fsopen FSharp.Interop.Dynamicopen CSharpForFSharp ? ? ? ? ? ?//C#項(xiàng)目中的命名空間[<EntryPoint>]let main argv = ? ? let cc = CSharpClass() ? ?let str = cc.TestDynamic() ? ?printfn "%A" (str?Length) ? //使用?替代.System.Console.Read()|>ignore ? ?0

打開FSharp.Interop.Dynamic命名空間,F#中可使用?來訪問動(dòng)態(tài)類型的屬性和方法。

調(diào)用帶有?ref?和?out?參數(shù)的函數(shù)

在C#中,有ref和out兩個(gè)關(guān)鍵字來修飾函數(shù)的參數(shù),使函數(shù)可以進(jìn)行引用傳遞和返回多個(gè)值。若要在F#中調(diào)用,則有一些不同。

帶有ref參數(shù)或者out參數(shù)的函數(shù),因?yàn)閰?shù)值可能在函數(shù)中發(fā)生改變,需要在F#先定義一個(gè)可變值類型,并使用尋址操作符(&)進(jìn)行傳入。

// C#代碼,位于命名空間CSharpForFSharppublic class CSharpClass{ ? ?public static bool OutRefParams(out int x, ref int y) ? ?{x = 100;y = y * y; ? ? ? ?return true;} }

在F#中調(diào)用:

// F#代碼,位于F#項(xiàng)目的Program.fsopen CSharpForFSharplet mutable x,y = 0,0CSharpClass.OutRefParams(&x,&y)

返回true并對(duì)x和y進(jìn)行了改變。

帶有out的參數(shù)在C#中可以使用未賦值的變量傳入,所以在F#中除了尋址傳入的方法,還可以直接忽略該參數(shù),則該函數(shù)在F#中成為了多返回值(即返回tuple)的形式:

let successful, result = Int32.TryParse(str)

Int32.TryParse返回了兩個(gè)值,第一個(gè)總是函數(shù)返回值,而后是out參數(shù)。

柯里化C#的方法

因?yàn)镃#中的函數(shù)無論有多少個(gè)參數(shù),在F#中調(diào)用時(shí)都視為一個(gè)tuple參數(shù),所以無法柯里化和使用函數(shù)管道符(|>)操作。

在F#中可以使用FuncConvert類將.NET中的函數(shù)轉(zhuǎn)換成F#中的函數(shù)。

let join : string*string list -> string = System.String.Joinlet curryJoin = FuncConvert.FuncFromTupled join[ 1..10 ] |> List.map string|> curryJoin "*" ? ? ? ? ? ? ? ?// "1*2*3*4*5*6*7*8*9*10"let joinStar = curryJoin "*" ? ?// joinStar類型為:string list -> string

以上代碼將System.String.Join轉(zhuǎn)化為F#中的函數(shù),因?yàn)樵摲椒ň哂卸鄠€(gè)重載,所以第一行代碼用來指定一個(gè)要轉(zhuǎn)換的重載。

其實(shí)FuncConvert類也可以在C#中使用,需要添加FSharp.Core程序集,有興趣的可以自己嘗試。

C#調(diào)用F#代碼

本節(jié)涉及操作需要?jiǎng)?chuàng)建兩個(gè)項(xiàng)目,一個(gè)F#的類庫(kù)項(xiàng)目,一個(gè)C#的控制臺(tái)項(xiàng)目。然后C#項(xiàng)目引用F#項(xiàng)目,因?yàn)?strong>涉及到F#中獨(dú)有類型,還需要引用FSharp.Core程序集。

若要在UWP項(xiàng)目中引用F#項(xiàng)目,需要通過“可移植庫(kù)”模板創(chuàng)建項(xiàng)目。

因?yàn)镃#中的類型比F#少了很多,所以很多C#不支持的類型均使用來代替,使用時(shí)只需像使用類一樣使用它就行了。而模塊,在C#中則為靜態(tài)類。

F#中的函數(shù)

需要注意的是,若在F#將函數(shù)作為參數(shù)或返回值,則F#中的函數(shù)在C#中將會(huì)變成

FSharpFunc<_,_>對(duì)象(位于FSharp.Core程序集的Microsoft.FSharp.Core命名空間)。

//F# 代碼,位于TestModule模塊open Systemtype MathUtilities = ? ?static member GetAdder() =(fun x y z -> Int32.Parse(x) + Int32.Parse(y) + Int32.Parse(z))

GetAdder函數(shù)返回一個(gè)將三個(gè)字符串轉(zhuǎn)成int再相加的函數(shù),在C#中調(diào)用此函數(shù):

FSharpFunc<string, FSharpFunc<string, FSharpFunc<string, int>>> ss = MathUtilities.GetAdder();var ret = ss.Invoke("123").Invoke("45").Invoke("67");

F#中的string -> string -> string -> int類型函數(shù)在C#中變成了FSharpFunc <string, FSharpFunc <string, FSharpFunc <string, int>>>。

這是因?yàn)镃#中的不支持函數(shù)柯里化,如果F#中的函數(shù)需要更多的參數(shù),在C#中調(diào)用就很麻煩了。雖然在F#使用很方便,但若需要編寫供C#使用的程序集,盡量不要使用這些功能。

命名規(guī)范

通過上面的了解,至少可以簡(jiǎn)單地使用F#和C#互相調(diào)用。但有個(gè)地方可能使有強(qiáng)迫癥的程序員很難受:F#模塊中的函數(shù)命名使用的是駝峰式(camelCase),在C#中類的方法則使用PascalCase命名規(guī)范。

F#模塊在編譯成靜態(tài)類后,在C#中使用變得不一致。在F#中提供了CompiledName特性用來指定編譯后的名稱

在第一篇中提到的F#中可用“`` ``”來使任何字符串作為變量(值)的名稱,若想在C#中調(diào)用這類值(不符合變量命名規(guī)則),也需要用CompiledName指定編譯后的名稱,否則無法調(diào)用。

module TestModule[<CompiledName("Add")>]let add = fun a b -> a+b[<CompiledName("IsSeven")>]let ``7?`` i = i % 7 = 0

在C#中調(diào)用:

int i = TestModule.Add(3,4);var b = TestModule.IsSeven(7);

相關(guān)文章:

  • 如果你也會(huì)C#,那不妨了解下F#(1):F# 數(shù)據(jù)類型

  • 如果你也會(huì)C#,那不妨了解下F#(2):數(shù)值運(yùn)算和流程控制語(yǔ)法

  • 如果你也會(huì)C#,那不妨了解下F#(3):F#集合類型和其他核心類型

  • 如果你也會(huì)C#,那不妨了解下F#(4):了解函數(shù)及常用函數(shù)

  • 【送書活動(dòng)】機(jī)器學(xué)習(xí)項(xiàng)目開發(fā)實(shí)戰(zhàn)

  • 《機(jī)器學(xué)習(xí)項(xiàng)目開發(fā)實(shí)戰(zhàn)》送書活動(dòng)結(jié)果公布

  • F#年度調(diào)查結(jié)果概述

原文地址:http://www.cnblogs.com/hjklin/p/fs-for-cs-dev-5.html


.NET社區(qū)新聞,深度好文,微信中搜索dotNET跨平臺(tái)或掃描二維碼關(guān)注

總結(jié)

以上是生活随笔為你收集整理的如果你也会C#,那不妨了解下F#(5):模块、与C#互相调用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

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

在线视频 91 | 午夜黄色 | 免费看久久 | 中文字幕视频三区 | 久久不射电影院 | 国产成在线观看免费视频 | 中文字幕一区二区三区视频 | 精品久久一级片 | 亚一亚二国产专区 | 日韩av偷拍| 麻豆影视网站 | 日韩欧美综合在线视频 | 欧美整片sss | 久久久久久久久久久黄色 | 美女国产在线 | 国产精品国产三级国产aⅴ无密码 | 日本不卡一区二区三区在线观看 | 一级α片免费看 | 国产69久久久欧美一级 | 欧美日韩在线看 | 久久精品视频免费观看 | 成人羞羞视频在线观看免费 | 日韩综合在线观看 | 香蕉在线视频观看 | www狠狠操 | 黄色av三级在线 | 国产视频 亚洲精品 | 中文字幕亚洲字幕 | 黄色网大全 | 国产原创在线 | 国产精品久久一区二区三区, | 色999在线| 九九热在线视频 | 日韩综合色 | 日韩欧美视频免费在线观看 | 天天五月天色 | 亚洲劲爆av | 中文免费观看 | 国产精品白浆视频 | 欧美有色| 97精品国自产拍在线观看 | 高清av中文字幕 | 久热色超碰 | 粉嫩一二三区 | 国产日产精品一区二区三区四区 | 成人精品久久久 | 国产视频一 | 日韩mv欧美mv国产精品 | 免费在线观看一区 | 99亚洲国产 | 成人av动漫在线观看 | 欧美亚洲成人免费 | 天天操天天操天天操天天操天天操 | 麻花天美星空视频 | 操操操天天操 | 91成人在线视频观看 | 日本久久久亚洲精品 | 日韩91精品 | 日韩欧美精品一区二区三区经典 | 自拍超碰在线 | 婷婷中文字幕综合 | 亚洲久草在线视频 | 国产在线 一区二区三区 | 亚洲国产高清在线观看视频 | 热精品| 色综合久久中文综合久久牛 | 五月天久久精品 | 亚洲五月激情 | 日韩在线观看三区 | 久久激情电影 | 麻豆视频入口 | 91香蕉国产在线观看软件 | 午夜婷婷在线观看 | 国产精品久久电影网 | 九九九九九精品 | 九色激情网 | 天天射天天干 | 在线视频福利 | 日韩一区在线免费观看 | 在线观看视频国产一区 | 欧美国产91| 亚洲精品网站 | 国产精品一区免费观看 | 成人福利在线观看 | 99资源网 | 亚洲精品免费在线 | 少妇bbw搡bbbb搡bbb | 亚洲精品国产综合99久久夜夜嗨 | 日本视频久久久 | 日韩免费在线观看网站 | 亚洲美女精品区人人人人 | 伊人激情综合 | 97超级碰碰碰视频在线观看 | 国产精品99精品久久免费 | 日韩在线观看你懂的 | 91在线网站 | 国产在线播放不卡 | 香蕉在线播放 | 国产精品久久视频 | 国产不卡视频在线播放 | 性色xxxxhd| 人人爱在线视频 | 欧美日韩二区在线 | 精品视频www | 精品国产一区二区三区不卡 | 欧美va天堂va视频va在线 | 在线直播av | 蜜桃视频成人在线观看 | 97中文字幕 | 一区二区三区四区在线免费观看 | 麻豆av一区二区三区在线观看 | 午夜精品视频免费在线观看 | 久久少妇 | 亚洲区另类春色综合小说 | 五月天久久久久久 | 97在线视频免费播放 | 日本福利视频在线 | 国产美女网站在线观看 | 91爱在线 | 97成人资源站| 97av视频| 久久伦理网 | 国产精品美女久久久久久 | 18+视频网站链接 | 中文字幕五区 | 91九色在线观看视频 | 亚洲精品综合一区二区 | 激情开心站 | av在线直接看| 国产精品黄色 | 91在线视频观看免费 | 成人小视频在线观看免费 | 特黄特色特刺激视频免费播放 | 精品久久久久一区二区国产 | 国产精品青草综合久久久久99 | 国产一级性生活 | 青春草视频在线播放 | 久久久私人影院 | 日韩高清在线观看 | 免费在线观看不卡av | 精品成人在线 | 五月天激情电影 | 欧美少妇xx | 久久五月婷婷丁香社区 | 色综合久久久久综合体桃花网 | 五月婷婷激情 | 一本一本久久aa综合精品 | 午夜久久福利影院 | 91香蕉视频色版 | 天天射综合网视频 | 欧美日韩一区二区三区不卡 | 在线观影网站 | 欧美夫妻性生活电影 | 国产3p视频| 久久久国产精品久久久 | 99情趣网视频| 永久免费毛片在线观看 | av视屏在线| 国产一区二区手机在线观看 | 激情视频免费观看 | 日韩av网站在线播放 | 久久免费成人 | 97精品国自产拍在线观看 | 久久影视一区 | 91视视频在线直接观看在线看网页在线看 | 亚洲精品www久久久 www国产精品com | 国产精品 视频 | 成人免费看视频 | 国产一区二区三区免费观看视频 | 操久 | 999视频网站 | 一区二区三区在线免费观看视频 | 99热网站 | 国产中文字幕视频在线观看 | 91中文字幕在线视频 | 久久艹人人 | 国产精品男女视频 | 免费av网站观看 | 狠狠色丁香婷婷综合久小说久 | 在线亚洲欧美日韩 | 久久国产精品久久精品国产演员表 | 国产精品女主播一区二区三区 | 97在线免费观看视频 | 九九久久精品视频 | 日本久久电影 | 黄色免费大全 | 六月色丁香| 亚洲精品久久久久久久不卡四虎 | 国产精品毛片一区二区 | 在线观看视频91 | 香蕉视频国产在线 | 24小时日本在线www免费的 | 成年人毛片在线观看 | 在线观看mv的中文字幕网站 | 久久免费播放 | 国产日韩精品一区二区 | 婷婷在线网| 亚洲精品婷婷 | 成人午夜久久 | 97香蕉视频 | 国产手机视频在线播放 | 日韩在线高清免费视频 | 免费亚洲片 | 国产尤物在线 | 国产理论一区二区三区 | 中国成人一区 | 国产色网 | 97人人网| 久久手机精品视频 | 亚洲香蕉视频 | 精品福利国产 | 天天综合网 天天综合色 | 成年美女黄网站色大片免费看 | 日本三级国产 | 久久综合色播五月 | 国产精品女人久久久久久 | 欧美日韩中 | 国产高清日韩欧美 | 在线之家免费在线观看电影 | 欧美成人在线免费观看 | 九九免费在线观看 | 亚洲一区二区视频 | 人人爱夜夜操 | 亚洲 综合 专区 | 午夜精品久久一牛影视 | 亚洲一区二区三区精品在线观看 | 国产精品久久久av久久久 | 中文国产在线观看 | 久久一区国产 | 婷婷在线不卡 | 亚洲精品1区2区3区 超碰成人网 | 黄色毛片网站在线观看 | 欧美一级久久久久 | 在线视频 你懂得 | 国内精品99 | 91香蕉国产在线观看软件 | 成人av免费| 在线视频观看你懂的 | 国产午夜在线观看视频 | 国产不卡视频 | 激情深爱五月 | 久久久久国产精品午夜一区 | 欧美激情综合色 | 亚洲欧美视频在线播放 | 亚洲精品五月 | 国产在线观看a | 在线91播放| 日本中文字幕网 | 在线午夜电影神马影院 | 九九视频免费在线观看 | 欧美在线你懂的 | 久久精品播放 | 国产免费又粗又猛又爽 | 国产精品自在线拍国产 | 国产精品久久一 | 黄色片网站大全 | 国产中文字幕久久 | 色综合久久天天 | free. 性欧美.com | 久久精品五月 | 激情五月在线视频 | 在线免费黄网站 | av成人免费观看 | 久久精品视频国产 | 国产最顶级的黄色片在线免费观看 | 久久综合欧美精品亚洲一区 | 夜色在线资源 | 午夜av在线播放 | 在线影视 一区 二区 三区 | 亚洲精品视频偷拍 | 国产看片网站 | 一级黄色在线视频 | 91福利视频免费 | 91av99| 久久这里只有精品首页 | 九九影视理伦片 | 91污在线| 毛片一二区 | 992tv在线观看| 久久综合网色—综合色88 | 免费一级黄色 | 日日夜夜人人精品 | 天天天天射 | 国产精品av在线免费观看 | 丁香婷婷色综合亚洲电影 | 在线观看中文字幕2021 | 99久在线精品99re8热视频 | 国产精品9区 | 五月婷av | 超碰大片 | 色网站在线观看 | 国内久久视频 | 91在线区 | 国产午夜精品久久久久久久久久 | 9i看片成人免费看片 | 欧美 激情 国产 91 在线 | 992tv在线| 98久久| 国产精品视频线看 | 国产一区二区在线免费播放 | 一级黄色电影网站 | 免费69视频| 国产精品国产三级国产不产一地 | 免费久久网站 | 香蕉视频国产在线 | 丝袜美女视频网站 | 国产精品一区二区在线 | 国产精品黄色影片导航在线观看 | 免费看黄在线观看 | 亚洲精品小视频在线观看 | 91精品网站在线观看 | 久久成人在线 | 国产黄视频在线观看 | 国产男女无遮挡猛进猛出在线观看 | 久久久黄色免费网站 | 2019国产精品 | 精品视频中文字幕 | 99精品国产成人一区二区 | 久久av电影 | 日韩欧美视频在线免费观看 | 日本精品在线 | 九九精品视频在线观看 | 欧美日韩一区二区免费在线观看 | 韩国精品在线 | 精品久久久一区二区 | 中文字幕一区二区三区四区久久 | 日本精品久久久一区二区三区 | 亚洲国产成人在线 | 一级性av| 久久久久久久久久久国产精品 | 91av免费看 | 日韩欧美69 | 亚洲最新在线视频 | 国产色秀视频 | 久久久久久久久久免费视频 | 久久国内精品视频 | 免费男女羞羞的视频网站中文字幕 | 国产视频一区二区在线 | 视频在线观看99 | 在线观看一区二区视频 | 国产三级香港三韩国三级 | 国产精品久久久久久久久久免费 | 免费看片色 | 超碰人人做 | 91看片淫黄大片一级在线观看 | 亚洲在线免费视频 | 欧美综合久久 | 亚洲黄色免费 | 亚洲欧美在线视频免费 | 国产色拍拍拍拍在线精品 | 亚洲精品免费在线播放 | 九九三级毛片 | 成人福利av | 欧美黑人xxxx猛性大交 | 中文字幕av最新更新 | 最近中文字幕免费 | 黄色片免费看 | 久久国产影院 | 婷婷丁香花 | 在线观看小视频 | 456成人精品影院 | 久久久精品午夜 | 婷婷在线精品视频 | 亚洲精品动漫成人3d无尽在线 | 中文字幕av在线不卡 | 97视频总站 | 亚洲伊人av | 日本三级不卡 | 久久久久免费视频 | 99热在线国产 | 乱男乱女www7788 | 天天射天天添 | 国产一区二区三区免费在线观看 | 三级免费黄色 | 日韩理论在线视频 | 国产黄色视 | 国产黄a三级三级三级三级三级 | 国产精品女同一区二区三区久久夜 | 成人免费看视频 | av在线电影播放 | 日b视频在线观看网址 | 91精品久久久久久久91蜜桃 | 国产做aⅴ在线视频播放 | 99精品视频中文字幕 | 天天干天天上 | 麻豆视传媒官网免费观看 | 婷婷久操| 中文字幕欧美日韩va免费视频 | 91麻豆精品国产91久久久久 | 99视频国产精品 | 久久精品二区 | 成人午夜电影免费在线观看 | 日本亚洲国产 | 天天色天天草天天射 | 亚洲成人av免费 | 亚州中文av | 国产一区欧美日韩 | 欧美日韩精品二区第二页 | 一区二区三区av在线 | 欧美日韩精品国产 | 国产丝袜美腿在线 | 国产看片免费 | 国产精品国产三级国产aⅴ无密码 | 一本一道久久a久久精品 | 精品久久久久久久久久 | 成人91av| 五月天激情视频在线观看 | 国产高清成人av | 国产手机在线播放 | 一区二区视频播放 | 久久一久久 | 91精品天码美女少妇 | 亚洲精品乱码久久久久久高潮 | av网站播放 | 97色资源 | 五月婷综合 | 精品无人国产偷自产在线 | 丁五月婷婷 | 欧美九九九 | 国产中文字幕91 | 成人h视频在线播放 | 国产中文字幕第一页 | 97超碰成人| 一色av| 在线免费观看国产视频 | 在线电影 一区 | 激情五月婷婷综合网 | 久久高清视频免费 | 天天搞天天| 午夜在线免费观看 | 欧美性久久久久久 | 91欧美日韩国产 | 欧美成人黄色 | 在线观看的黄色 | 福利视频一区二区 | 午夜黄色大片 | 亚洲最大成人免费网站 | a在线播放 | 成人av午夜 | 中文一区在线观看 | 久久永久免费视频 | 日韩在线观看第一页 | 一区二区三区韩国免费中文网站 | 一区二区 不卡 | 国产精品在线看 | 99精品视频免费看 | 久草精品网 | 久久精品高清 | 在线a视频免费观看 | 婷婷久操| 四虎影视成人永久免费观看亚洲欧美 | 国内免费久久久久久久久久久 | 日韩视频专区 | 毛片网站免费 | 日韩专区在线播放 | 网站你懂的 | 色就色,综合激情 | 国产在线一区观看 | 97国产在线视频 | 日韩精品视频在线观看免费 | 久久综合久久八八 | 久久人人爽人人片 | 国产成人久久精品77777 | 国产不卡精品 | 99久久精品国产一区 | 精品二区久久 | 久久嗨| 亚洲综合视频在线 | 99午夜| 国产成人一区二区三区 | 91精品一区国产高清在线gif | 天天干天天操天天拍 | 九九热免费观看 | 亚洲精品美女久久久 | 色婷婷综合久久久 | 国产一线天在线观看 | 在线观看黄污 | av中文在线影视 | 国产一级免费在线 | www.久久成人 | 日韩二三区 | 人人澡人人添人人爽一区二区 | 欧美精品一区在线发布 | 中文不卡视频在线 | 久久视频免费看 | 免费h精品视频在线播放 | 久草视频国产 | 午夜国产福利在线观看 | 成年在线观看 | 国产白浆在线观看 | 日韩视频免费观看高清完整版在线 | 91成人精品一区在线播放69 | 国产一区久久 | 九色91在线 | 蜜臀av性久久久久蜜臀aⅴ流畅 | 久久精品中文视频 | 九九在线视频 | 亚洲视频在线看 | 国产亚洲综合在线 | 日韩免费视频线观看 | 播五月婷婷 | 夜夜看av| 国产成人黄色 | sesese图片| 中文字幕国产一区 | 国产美女在线免费观看 | 天天干天天摸 | 免费一级片观看 | 国产原创在线 | 欧美日韩一区二区三区不卡 | 欧美在线观看视频 | 天天干夜夜擦 | 日韩国产精品一区 | 国产精品永久免费在线 | 麻豆国产精品va在线观看不卡 | 亚洲国产精品va在线看黑人动漫 | 在线一区电影 | 国产一区二区三区免费观看视频 | 久久电影网站中文字幕 | 精品国产一区二区三区久久久久久 | 视频国产一区二区三区 | 五月婷婷激情六月 | 午夜国产福利在线观看 | 狠狠操导航| 欧美日韩在线观看一区二区 | www.久久久.cum| 91成人午夜| 天天操天天操 | 狠狠色噜噜狠狠 | 最近日本mv字幕免费观看 | 国产资源网 | 国产黄色av影视 | 最近av在线| 国精产品永久999 | 九草在线观看 | 91av在线不卡| 久久久久综合网 | 欧美激情亚洲综合 | 中文区中文字幕免费看 | 日韩在线中文字幕 | 欧美精品亚洲二区 | 亚洲成人黄 | 人人干网 | 精品国产免费一区二区三区五区 | 日韩一区精品 | 国产一级淫片免费看 | 最新国产在线视频 | 在线观看爱爱视频 | 99视频久久 | 日韩在线三级 | 国产看片 色 | 激情网婷婷| 鲁一鲁影院 | 西西444www| 国产99亚洲| 一区二区三区在线观看免费 | 亚洲一级免费电影 | 在线电影日韩 | 久久手机免费观看 | 亚洲一区二区精品3399 | 精品久久免费看 | 中文字幕第一页在线播放 | 天天干天天做天天操 | 成人午夜毛片 | 国产日韩精品久久 | 国产精品专区一 | 精品国产一区二区三区久久久蜜臀 | 在线观看免费 | 五月天综合色 | 爱爱一区| 国内精品福利视频 | 夜夜躁日日躁狠狠久久av | 国产又粗又猛又色又黄网站 | 日韩视频中文 | 69av视频在线观看 | 国产精品毛片网 | 日韩av电影中文字幕在线观看 | 新av在线 | 最近日本韩国中文字幕 | 91麻豆精品久久久久久 | 欧美激情奇米色 | 中文在线免费一区三区 | 日韩特级片 | 91精品综合| 91人人视频在线观看 | 玖玖爱免费视频 | 国产精品久久久久久一区二区 | 国产婷婷一区二区 | 又黄又爽又无遮挡免费的网站 | 欧美日韩一区久久 | 午夜视频在线观看一区二区三区 | av免费看在线 | 91精品国产欧美一区二区成人 | 九色91在线 | 亚洲国产小视频在线观看 | 国产高清不卡 | 亚洲丁香久久久 | 免费视频成人 | 国产精品视频专区 | www色com| 国产高清在线免费视频 | 欧美人牲 | 在线观看久久 | 97超碰在线久草超碰在线观看 | 在线视频 国产 日韩 | 97国产情侣爱久久免费观看 | 国产黄在线播放 | 6080yy午夜一二三区久久 | 日韩欧美久久 | 欧洲精品码一区二区三区免费看 | 在线影视 一区 二区 三区 | 国产成人在线观看免费 | 国产破处在线播放 | 国产成人久久精品一区二区三区 | 久久久久麻豆 | 久久精品中文字幕一区二区三区 | 日韩精品一区电影 | 99久久99久久 | 91精品国产成人 | 久草久视频 | 亚洲成熟女人毛片在线 | 天天干天天操天天 | 欧美激情亚洲综合 | 亚洲精品久久久久www | 98超碰人人| 麻豆免费看片 | 97在线免费观看 | 婷婷伊人综合亚洲综合网 | 欧美日韩不卡一区二区三区 | 色视频网站在线 | 天天视频亚洲 | 亚洲精品合集 | 亚洲精品免费在线视频 | 亚洲视频免费在线观看 | 国产在线精品区 | 国产精品99免视看9 国产精品毛片一区视频 | 乱子伦av| 黄污视频网站 | 麻豆视屏| 国产99中文字幕 | 中文乱码视频在线观看 | 最近中文国产在线视频 | 国产99黄 | av在线免费观看网站 | 中文字幕在线观看完整版电影 | 欧美一区二区三区在线播放 | 欧美日韩大片在线观看 | 久久在线一区 | 久久精品一区二区三区视频 | av不卡中文字幕 | 免费三级大片 | 日韩免费成人av | 最近免费中文字幕大全高清10 | av福利免费 | 在线观看成人 | 久久综合久久久 | 国产高清免费在线观看 | 国产精品久久久久久久久久久久午夜 | 久久免费美女视频 | 欧美精品v国产精品v日韩精品 | 国产手机视频在线播放 | 91九色在线观看 | 欧美一级视频免费 | 日韩精品一区二区不卡 | 久久9999久久免费精品国产 | 亚洲精品网址在线观看 | 免费观看的av网站 | 久青草视频在线观看 | 久久精品网站免费观看 | 欧美最新另类人妖 | 色婷婷精品大在线视频 | 狠狠色婷婷丁香六月 | 91色视频| 在线综合色 | www日韩精品 | 人人狠狠综合久久亚洲婷 | 91香蕉国产| 人人干97 | 91精品在线免费观看视频 | 亚洲免费永久精品国产 | 97超碰在线久草超碰在线观看 | 日韩欧美视频在线播放 | 免费看国产精品 | 日韩成人免费观看 | 一区二区三区免费在线观看视频 | 亚洲午夜精品久久久久久久久久久久 | 国产成人精品久 | 五月开心激情网 | 日韩剧情 | 国产精品久久久久久久久婷婷 | 亚洲成av | 日韩欧美一区二区不卡 | 四虎成人免费观看 | 国产在线观看中文字幕 | 午夜精品av | 激情五月婷婷综合网 | 午夜久久久久 | 免费视频91| 黄色一级免费 | 亚洲 综合 国产 精品 | 69国产在线观看 | 色在线免费观看 | 久久精品久久综合 | 奇米网网址 | 国产亚洲精品久久久久久无几年桃 | 天天色棕合合合合合合 | 欧美日韩另类视频 | 国产黄色网 | 中文字幕亚洲五码 | 久久久久欠精品国产毛片国产毛生 | 九草视频在线观看 | 婷婷激情五月综合 | 欧美日韩免费看 | 精品99在线| 在线亚洲精品 | 人人狠狠综合久久亚洲婷 | 亚洲 欧美 综合 在线 精品 | 久久久久久久久毛片精品 | 九九三级毛片 | 在线观看免费一区 | 中文字幕 第二区 | 久久开心激情 | 亚洲日本一区二区在线 | 一区二区 不卡 | 97av超碰 | 狠狠色狠狠色综合系列 | 最新av网站在线观看 | 91成人区| 午夜视频在线观看一区二区 | 草久草久 | 免费看的视频 | 一区二区三区视频 | 久久久国产精品人人片99精片欧美一 | 欧美日韩国产区 | 成人国产精品一区二区 | 91在线视频网址 | 国产免费久久久久 | 国产精品久久在线观看 | 超碰97中文 | 亚洲一区视频在线播放 | 色婷婷影视 | 中文字幕亚洲高清 | 91在线精品一区二区 | 91视频 - 88av | 91xav| 久久免费看 | 久久久高清免费视频 | 久久99国产精品 | 午夜在线资源 | 麻豆视频免费在线 | 久久国产精品网站 | 成人啊 v | 久久久久久网站 | 久久久精品二区 | 在线电影 你懂得 | 99理论片| 中文字幕在线播放第一页 | 国产精品午夜久久久久久99热 | 欧洲激情综合 | 久久久久久久久久影视 | 欧美男同网站 | 国产不卡在线播放 | 国产精品一区二区在线观看免费 | 丁香花在线视频观看免费 | 日韩av不卡播放 | 国产精品久久久久永久免费看 | 一区二区三区在线视频观看58 | 成人网页在线免费观看 | 午夜精品一区二区三区在线观看 | 久久久国产成人 | 亚洲精品99久久久久中文字幕 | 国产美女精品人人做人人爽 | 色偷偷88888欧美精品久久 | 亚洲精品视频在线看 | 欧美日韩视频免费看 | 亚洲最新合集 | 色综合色综合色综合 | 亚洲成a人片在线www | 91| 午夜美女网站 | 97超碰在线人人 | 久久久久久久久久久久av | 精品福利视频在线观看 | 久久久99精品免费观看app | 国产精品久久久免费 | 天天操夜夜爱 | www.久久色| 911精品美国片911久久久 | 成人av电影免费在线播放 | 久久精品观看 | 午夜久久影视 | 97电影在线 | 丁香六月婷婷 | 欧美成人高清 | 国产麻豆精品一区二区 | 992tv又爽又黄的免费视频 | 日韩在线观看网站 | 久久99国产精品自在自在app | 特级xxxxx欧美 | 久久五月情影视 | 久草精品电影 | 亚洲精品在线观看中文字幕 | 色99之美女主播在线视频 | 在线观看韩日电影免费 | 久久免费av电影 | 又黄又爽又无遮挡的视频 | 中文字幕在线观看网站 | 中文字幕电影高清在线观看 | 色国产在线 | bbbbb女女女女女bbbbb国产 | 国产精品一区二区三区在线播放 | 国产色秀视频 | 在线观看激情av | 国产电影一区二区三区四区 | 久草在线免费播放 | 99久久久久 | 国产精品二区在线 | 久久综合久久88 | 欧美一二区视频 | 一级黄色在线免费观看 | 精品专区一区二区 | 天堂va在线高清一区 | 伊人精品在线 | 国产免费久久精品 | 色狠狠久久av五月综合 | 久久99精品一区二区三区三区 | 亚洲天堂网在线观看视频 | 又色又爽又黄高潮的免费视频 | 欧美乱淫视频 | 日本久久片 | 黄色三级视频片 | 久久av观看| 伊人中文字幕在线 | 亚洲精品在线二区 | 亚洲成人免费 | 久久免费电影网 | 在线观看中文字幕一区 | 亚洲精品国产精品国自产 | 69视频在线播放 | 婷婷伊人五月 | 五月婷影院 | 国产黄色免费 | 国产精品福利无圣光在线一区 | 国产日韩精品一区二区在线观看播放 | 中文字幕免费国产精品 | 色婷婷在线播放 | 中文字幕免费一区 | 友田真希x88av | 亚洲一级二级 | 亚洲激情一区二区三区 | h视频日本| 一区二区精品在线视频 | 国产精品自在欧美一区 | 中文字幕在线观看完整 | 国产精品美女视频网站 | 亚洲午夜精品一区二区三区电影院 | 日精品在线观看 | 亚洲在线色 | 婷婷久月 | 国产在线专区 | 亚洲人久久 | 波多野结衣一区 | 欧美日韩国产高清视频 | 亚洲美女在线一区 | 久久香蕉国产 | 国产人成一区二区三区影院 | 麻豆国产露脸在线观看 | 在线播放视频一区 | 国产精品网址在线观看 | 成人国产亚洲 | 狠狠色丁香婷婷综合久小说久 | 92中文资源在线 | 91人人爽久久涩噜噜噜 | 国产欧美日韩一区 | 国产免费又粗又猛又爽 | 中文免费观看 | 国产视频精品网 | 欧美日韩精品区 | 日韩啪视频| 精品国产一区二区三区四区vr | 国产手机av | 国产高清不卡在线 | 伊人首页| 久久伦理电影网 | 久久久久久久99 | 西西444www大胆无视频 | 啪啪肉肉污av国网站 | 97网在线观看 | 日韩在线视频免费看 | 99色| 亚洲丝袜一区二区 | 欧美视屏一区二区 | 一区二区理论片 | 一级一片免费观看 | 51久久成人国产精品麻豆 | 久久夜色网 | 欧美在线不卡一区 | 成全免费观看视频 | 欧美福利久久 | 欧美成a人片在线观看久 | 毛片网在线播放 | 精品国产一区在线观看 | 精品久久一二三区 | 久草com | 国产高清免费在线观看 | 久久人人精品 | 精品视频久久久久久 | 色妞色视频一区二区三区四区 | 日韩免费看片 | 中文字幕视频播放 | 在线观看午夜 | 国产天天爽 | 国产理论在线 | 免费观看91 | 国产精品入口a级 | 色播五月婷婷 | 国产色在线 | 日本久久久久久科技有限公司 | 成人黄色毛片 | av电影在线观看完整版一区二区 | 波多野结衣视频一区二区三区 | 国产精品色在线 | 国产精品视频地址 | 五月婷婷激情综合网 | 狠狠色网 | 久久免费试看 | 看毛片网站 | 国产高清福利在线 | 美女国内精品自产拍在线播放 | 在线亚洲播放 | 五月天综合网站 | 久久精品视频18 | 欧美视频在线观看免费网址 | 欧美一区二区日韩一区二区 | 国产96在线观看 | 国产精品久久久久久爽爽爽 | 国产精品国产精品 | 玖玖爱国产在线 | 免费在线观看毛片网站 | 92中文资源在线 | 五月婷影院 | 日韩国产精品一区 | 日韩av资源站 | 免费av网站在线看 | 国产精品一区二区你懂的 | 久久成人人人人精品欧 | 三级小视频在线观看 | 亚洲乱码中文字幕综合 | 国产成人精品在线观看 | 国产日韩视频在线 | 久久国产精品色av免费看 | 一二区精品| 国产高清av免费在线观看 | 日韩精品久久久久久久电影竹菊 | 丁香花五月 | 日日夜夜精品免费观看 | 国产亚洲成av人片在线观看桃 | 99综合视频| 亚洲丝袜中文 | 国产高清在线a视频大全 | 国产涩涩网站 | 婷婷www| 久久久免费观看 | 中文字幕免费高 | 69久久99精品久久久久婷婷 | a级国产乱理伦片在线观看 亚洲3级 | 探花在线观看 | 久久久久久久久久久久久久免费看 | 国产精品久久久久久婷婷天堂 | 亚洲经典在线 | 天天干,天天射,天天操,天天摸 | 国产精品乱码一区二区视频 | 国产黄色精品在线观看 | 97超碰人 | 免费看黄电影 | www久久 | 亚洲欧美日韩一区二区三区在线观看 | 日日夜夜精品免费视频 | 99久久99久久免费精品蜜臀 | 国产精品99精品久久免费 | 天天干夜夜爱 | 国产精品毛片一区 | 日本在线观看黄色 | 日日精品 | 在线播放视频一区 | 欧美精品做受xxx性少妇 | 五月激情天 | 在线天堂中文在线资源网 | 日韩视频一二三区 | 99久久久久久久久 | 中文日韩在线视频 | 久久久久久中文字幕 | 国产精品久久久久影视 | 色吧久久| a国产精品 | 日韩精品一区二区三区电影 | 欧美日韩3p | 亚洲情感电影大片 |