成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > Lua中的函數(shù)知識總結(jié)

Lua中的函數(shù)知識總結(jié)

熱門標(biāo)簽:武漢外呼防封系統(tǒng)多少錢 清朝地圖標(biāo)注哈爾濱 冀州市地圖標(biāo)注 漳州智云呼電話機(jī)器人 怎么去除地圖標(biāo)注 地圖標(biāo)注大廈 個人怎么在地圖標(biāo)注需要的店鋪 百度地圖標(biāo)注早餐區(qū)域 新岸線智能電銷機(jī)器人

前言

Lua中的函數(shù)和C++中的函數(shù)的含義是一致的,Lua中的函數(shù)格式如下:

復(fù)制代碼 代碼如下:

function MyFunc(param)
     -- Do something
end

在調(diào)用函數(shù)時,也需要將對應(yīng)的參數(shù)放在一對圓括號中,即使調(diào)用函數(shù)時沒有參數(shù),也必須寫出一對空括號。對于這個規(guī)則只有一種特殊的例外情況:一個函數(shù)若只有一個參數(shù),并且此參數(shù)是一個字符串或table構(gòu)造式,那么圓括號便可以省略掉??匆韵麓a:
復(fù)制代碼 代碼如下:

print "Hello World"          --> print("Hello World")等價
print [[a multi-line
          message]]          -->print([[a multi-line
                              -->               message]]) 等價
-- f是一個函數(shù)
f{x=10, y=20}               -->f({x=10, y=20}) 等價

上面代碼的一些簡便寫法,如果不熟悉的話,在閱讀別人的代碼時,就會是一頭霧水。

一個函數(shù)定義具有一個名稱、一系列的參數(shù)和一個函數(shù)體。函數(shù)定義時,所定義的參數(shù)的使用方式與局部變量非常相似,它們是由調(diào)用函數(shù)時的“實(shí)際參數(shù)”初始化的。調(diào)用函數(shù)時提供的實(shí)參數(shù)量可以與形參數(shù)量不同。Lua會自動調(diào)整實(shí)參的數(shù)量,以匹配參數(shù)表的要求,若“實(shí)參多余形參,則舍棄多余的實(shí)參;若實(shí)參不足,則多余的形參初始化為nil”。這個與接下來要介紹的多重返回值非常相似。

多重返回值

這個應(yīng)該是Lua的一個特征吧。允許函數(shù)返回多個結(jié)果,只需要在return關(guān)鍵字后列出所有的返回值即可。以下根據(jù)帶來來說明情況:

復(fù)制代碼 代碼如下:

function foo0() end                         -- 無返回值
function foo1() return "a" end          -- 返回一個結(jié)果
function foo2() return "a", "b" end     -- 返回兩個結(jié)果
 
-- 在多重賦值時,如果一個函數(shù)調(diào)用是最后,或僅有的一個表達(dá)式,
-- 那么Lua會保留其盡可能多的返回值,用于匹配賦值變量
x, y = foo2()               -- x = "a", y = "b"
x = foo2()                    -- x = "a", "b"被丟棄
x, y, z = 10, foo2()     -- x = 10, y = "a", z = "b"
 
-- 如果一個函數(shù)沒有返回值或者沒有足夠多的返回值,那么Lua會用
-- nil來補(bǔ)充缺失的值
x, y = foo0()               -- x = nil, y = nil
x, y = foo1()               -- x = "a", y = nil
x, y, z = foo2()          -- x = "a", y = "b", z = nil
 
-- 如果一個函數(shù)調(diào)用不是一系列表達(dá)式的最后一個元素,那么將只產(chǎn)生一個值:
x, y = foo2(), 20          -- x = "a", y = 20
x, y = foo0(), 20, 30     -- x = nil, y = 20, 30則被丟棄
 
-- table構(gòu)造式可以完整的接收一個函數(shù)調(diào)用的所有結(jié)果,即不會有任何數(shù)量
-- 方面的調(diào)整
local t = {foo0()}          -- t = {}(一個空的table)
local t = {foo1()}          -- t = {"a"}
local t = {foo2()}          -- t = {"a", "b"}
 
-- 但是,對于上述的行為,只有當(dāng)一個函數(shù)調(diào)用作為最后一個元素時才會發(fā)生,
-- 而在其他位置上的函數(shù)調(diào)用總是只產(chǎn)生一個結(jié)果值
local t = {foo0(), foo2(), 4}          -- t[1] = nil, t[2] = "a", t[3] = 4
 
-- 我們也可以在一個函數(shù)中,使用return返回另一個函數(shù)
function MyFunc()          -- 返回a
     return foo1()          -- 注:這里是return foo1(),而不是return (foo1())
end
 
-- return foo1()和return (foo1())是兩個完全不同的意思
-- 將一個函數(shù)調(diào)用放入一對圓括號中,從而迫使它只返回一個結(jié)果
print((foo0()))          -- nil
print((foo1()))          -- a
print((foo2()))          -- a

變長參數(shù)

在C語言中,函數(shù)可以接受不同數(shù)量的實(shí)參,Lua中的函數(shù)也可以接受不同數(shù)量的實(shí)參,例如以下代碼:

復(fù)制代碼 代碼如下:

-- 打印所有的參數(shù)
function VarArguments(...)
     for i, v in ipairs{...} do
          print(v)
     end
end

VarArguments(1, 2, 3)


參數(shù)表中的3個點(diǎn)(…)表示該函數(shù)可接受不同數(shù)量的實(shí)參。當(dāng)這個函數(shù)被調(diào)用時,它的所有參數(shù)都會被收集到一起。這部分收集起來的實(shí)參稱為這個函數(shù)的“變長參數(shù)”。一個函數(shù)要訪問它的變長參數(shù)時,仍需要用到3個點(diǎn)(…)。但不同的是,此時這3個點(diǎn)是作為一個表達(dá)式來使用的。在上例中,表達(dá)式{…}表示一個由所有變長參數(shù)構(gòu)成的數(shù)組。在C語言中使用變長參數(shù)需要注意的問題,在Lua中同樣需要注意。

通常一個函數(shù)在遍歷其變長參數(shù)時只需要使用表達(dá)式{…},這就像訪問一個table一樣,訪問所有的變長參數(shù)。然而在某些特殊的情況下,變長參數(shù)中可能會包含一些故意傳入的nil,那么此時就需要用select來訪問變長參數(shù)了。調(diào)用select時,必須傳入一個固定實(shí)參selector和一系列變長參數(shù)。如果selector為數(shù)字n,那么select返回它的第n個可變實(shí)參;否則selector只能為字符串“#”,這樣select會返回變長參數(shù)的總數(shù),請看以下代碼:

復(fù)制代碼 代碼如下:

for i = 1, select('#', ...) do
    local arg = select(i, ...) -- 得到第i個參數(shù)
    -- Do something else
end

select(‘#', …)會返回所有變長參數(shù)的總數(shù),其中包括nil(還記得table.maxn么?)對于Lua 5.0版本來說,變長參數(shù)則有另外一套機(jī)制。聲明函數(shù)的語法是一樣的,也是將3個點(diǎn)作為最后一個參數(shù)。但Lua 5.0沒有提供“…”表達(dá)式。而是通過一個隱含的局部table變量“arg”來接受所有的變長參數(shù)。這個table還有一個名為“n”的字段,用來記錄變長參數(shù)的總數(shù),例如以下代碼:

復(fù)制代碼 代碼如下:

function MyFunc(a, b, ...)
     print(arg.n)
end
 
MyFunc(1, 2, 3, 4, 5)     -->3

這套舊機(jī)制的缺點(diǎn)在于,每當(dāng)程序調(diào)用了一個具有變長參數(shù)的函數(shù)時,都會創(chuàng)建一個新的table。而在新機(jī)制中,只有在需要時才會去創(chuàng)建這個用于變長參數(shù)訪問的table。這里只是對這個方法進(jìn)行簡單介紹,別在閱讀別人的代碼時,看不懂!?。?/p>

深入討論函數(shù)

在Lua中,函數(shù)與其它傳統(tǒng)類型的值具有相同的權(quán)利。函數(shù)可以存儲到變量或table中,也可以作為實(shí)參傳遞給其它函數(shù),還可以作為其它函數(shù)的返回值。在Lua中有一個容易混淆的概念是,函數(shù)與所有其它值一樣都是匿名的,即它們都沒有名稱。當(dāng)討論一個函數(shù)名時,實(shí)際上是在討論一個持有某函數(shù)的變量,例如以下代碼:

復(fù)制代碼 代碼如下:

-- 我們經(jīng)常這樣定義函數(shù)
function foo(x) return 2 * x end
 
-- 實(shí)際上,這只是一種“語法糖”而已;
-- 上述代碼只是下面代碼的一種簡化書寫形式
foo = function (x) return 2 * x end

實(shí)際上,一個函數(shù)定義實(shí)際就是一條語句(更準(zhǔn)確地說是一條賦值語句),這條語句創(chuàng)建了一種類型為“函數(shù)”的值,并將這個值賦予一個變量。由于函數(shù)在Lua中就是一個普通的值,所以不僅可以將其存儲在全局變量中,還可以存儲在局部變量甚至table的字段中。

內(nèi)嵌函數(shù)

若將一個函數(shù)寫在另一個函數(shù)之內(nèi),那么這個位于內(nèi)部的函數(shù)便可以訪問外部函數(shù)中的局部變量,這個特征叫做“詞法域”。我們來看看下面一段有趣的代碼:

復(fù)制代碼 代碼如下:

function newCounter()
     local i = 0
     return function () -- 匿名函數(shù)
          i = i + 1
          return i
     end
end
 
c1 = newCounter()
print(c1())     -->輸出什么?
print(c1())     -->又輸出什么?

如果你很明白上面的輸出,很明白上面的代碼,那么閉合函數(shù)這一小節(jié)就不需要閱讀了。在上述代碼中,有一個變量i,對于函數(shù)newCounter來說,i是一個局部變量,但是對于匿名函數(shù)來說,當(dāng)它訪問這個i時,i既不是全局變量,也不是局部變量,對于我們來說,我們稱這樣的變量為一個“非局部的變量”。下面這段代碼也是同樣的道理:
復(fù)制代碼 代碼如下:

function newCounter(i)
     return function () -- 匿名函數(shù)
          i = i + 1
          return i
     end
end
 
c1 = newCounter(10)
print(c1())     -->輸出什么?
print(c1())     -->又輸出什么?

匿名函數(shù)訪問了一個“非局部的變量”i,該變量用于保持一個計數(shù)器。乍一看,由于創(chuàng)建變量i的函數(shù),也就是newCounter已經(jīng)返回,所以之后每次調(diào)用匿名函數(shù)時,i都應(yīng)該是已經(jīng)超出了作用范圍。但是,Lua會以closure的概念來正確地處理這種情況。在這里簡單的講,一個closure就是一個函數(shù)加上該函數(shù)所需訪問的所有“非局部的變量”。如果再次調(diào)用newCounter,那么它會創(chuàng)建一個新的局部變量i,從而將得到一個新的closure。在后續(xù)的總結(jié)中,我會專門總結(jié)一篇關(guān)于Lua中的閉包的博文,敬請期待。

非全局的函數(shù)

由于函數(shù)和普通變量一樣,所以函數(shù)不僅可以存儲在全局變量中,還可以存儲在table的字段中,或局部變量中。我們可以把函數(shù)存在一個table中,比如以下代碼:

復(fù)制代碼 代碼如下:

Lib = {}
Lib.foo = function (x, y) return x + y end
Lib.goo = function (x, y) return x - y end

只要將一個函數(shù)存儲在一個局部變量中,就得到了一個“局部函數(shù)”,也就是說這個函數(shù)只能在某個特定的作用域內(nèi)才有效。我們可以這樣定義一個局部的函數(shù):
復(fù)制代碼 代碼如下:

local f = function (參數(shù)>)
     函數(shù)體>
end
-- Lua還提供另一種特殊的“語法糖”
local function f (參數(shù)>)
     函數(shù)體>
end

有的時候,我們需要進(jìn)行函數(shù)的前置聲明,比如以下代碼:
復(fù)制代碼 代碼如下:

local f, g
 
function f()
     一些其它操作>
     g()
end
 
function g()
     一些其它操作>
     f()
end

總結(jié)

這篇博文對Lua中的函數(shù)進(jìn)行了大體上的總結(jié),至少看完這篇博文,你會使用Lua寫函數(shù)了,會使用Lua中的函數(shù)了。但是對于比較深的東西,這里沒有總結(jié),比如“閉包”。我會專門寫一篇關(guān)于Lua中的閉包的文章。

您可能感興趣的文章:
  • Lua中的string庫(字符串函數(shù)庫)總結(jié)
  • Lua中的函數(shù)(function)、可變參數(shù)、局部函數(shù)、尾遞歸優(yōu)化等實(shí)例講解
  • Lua中的一些常用函數(shù)庫實(shí)例講解
  • Lua中的模塊與module函數(shù)詳解
  • Lua字符串庫中的幾個重點(diǎn)函數(shù)介紹
  • Lua的table庫函數(shù)insert、remove、concat、sort詳細(xì)介紹
  • Lua中的常用函數(shù)庫匯總
  • Lua中的面向?qū)ο缶幊淘斀?/li>
  • Lua面向?qū)ο笾惡屠^承
  • Lua面向?qū)ο笾嘀乩^承、私密性詳解
  • Lua面向?qū)ο缶幊虒W(xué)習(xí)筆記
  • Lua中函數(shù)與面向?qū)ο缶幊痰幕A(chǔ)知識整理

標(biāo)簽:宣城 德宏 天門 天門 臺灣 濰坊 儋州 金昌

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Lua中的函數(shù)知識總結(jié)》,本文關(guān)鍵詞  Lua,中的,函數(shù),知識,總結(jié),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Lua中的函數(shù)知識總結(jié)》相關(guān)的同類信息!
  • 本頁收集關(guān)于Lua中的函數(shù)知識總結(jié)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    色视频欧美一区二区三区| xfplay每日更新av资源在线| 麻豆免费在线观看视频| 国产一区二区三区国产| 亚洲国产成人91porn| 亚洲性日韩精品一区二区| 亚洲免费观看高清完整版在线观看| 中文字幕中文乱码欧美一区二区| 成人国产精品免费观看| 亚洲天堂视频在线观看免费| jizz国产在线| 国产国语刺激对白av不卡| 色愁久久久久久| 天天弄天天操| 少妇极品熟妇人妻无码| 国产精品亚洲一区二区无码| 久久中文字幕一区| 不卡视频观看| 国产精品白丝jk白祙喷水网站| 最新国产精品久久精品| 在线看污网站| 黄页在线观看免费| 美女网站色精品尤物极品姐弟| 激情小视频网站| 99re6在线观看| 国产a级免费视频| 老司机深夜福利网站| 一区二区三区精品在线观看| 欧美一级免费观看| 97av在线影院| 国产精品久久久久一区二区国产| 欧美亚洲国产一区二区三区| 一级黄色免费看| 亚洲欧美乱综合图片区小说区| 国内外成人免费在线视频| 亚洲国内自拍| 日本一区二区高清| 国产亚洲人成网站在线观看| 成人免费av网站| 国产成人精品av久久| 波多野结衣不卡视频| 精品国产乱码久久久久久鸭王1| 天天夜夜人人| 日本一区精品| 日韩在线一二三| 成人亚洲精品7777| 日韩av一区二区三区美女毛片| 欧美日韩一区二区在线观看视频| 欧美色图在线观看| 丝袜美腿亚洲一区二区图片| 亚洲图片在线视频| 成人h精品动漫一区二区三区| 欧美黑人巨大xxxx猛交| 色综合久久久久久久久久久| 中文字幕精品www乱入免费视频| 欧美午夜性囗交xxxx| 久久丫精品忘忧草西安产品| 免费一二一二在线视频| 日韩美女视频19| 亚洲精品18p| 精品国内自产拍在线观看| 能看毛片的网站| 动漫精品视频| 国产一区二区中文字幕免费看| 中文字幕乱在线伦视频中文字幕乱码在线| 亚洲午夜激情| 男生草女生视频| 中国一级特黄毛片大片| 黄色免费网站视频| 成人短视频在线观看免费| 亚洲中文字幕在线观看| 日韩一级视频在线观看| 久久一区二区视频| av在线播放成人| 麻豆亚洲av熟女国产一区二| 91sao在线观看国产| 国产精品熟妇一区二区三区四区| 91麻豆精品国产91久久久久久久久| 国产精品一国产精品最新章节| 欧美图片欧美激情欧美精品| 黄色网址电影| 97aⅴ精品视频一二三区| 欧美成人日本| 久久久91精品国产一区二区精品| 欧美主播一区二区三区美女 久久精品人| 成年人黄色大片在线| 日日噜噜噜夜夜爽爽狠狠视频| 一二区在线观看| 99久久精品国产一区二区三区| 成人免费小视频| 91麻豆精品国产91久久久久久久久| 国家队第一季免费高清在线观看| 欧美禁忌电影| 天天色天天综合网| 51视频国产精品一区二区| 在线观看国产一区二区| 黄色手机在线视频| 好操啊在线观看免费视频| 亚洲电影小说图| 久久99国产精品久久99果冻传媒| 在线能看的av| 久久精品人人做人人爽人人| 精品国产av鲁一鲁一区| 一本到av在线| 欧美成人专区| 国产精品夜夜夜一区二区三区尤| 亚洲色图50p| 欧美黑人又粗又大又爽免费| 男人的天堂va在线| 亚洲女同另类| 国产一区二区三区四区五区传媒| 日本xxxxwww| 婷婷激情小说网| 污导航在线观看| 国产又黄又大又粗的视频| 国产丰满果冻videossex| 亚洲精品永久www嫩草| 伊人伊成久久人综合网小说| 成人高h视频在线| 欧美亚洲精品天堂| 欧美日韩国产综合视频在线| 经典一区二区| 人妻精品久久久久中文| 91欧美日韩麻豆精品| 亚洲精品免费播放| 中文字幕国产高清| 在线观看美女网站大全免费| 欧美午夜精品电影| 欧美日韩免费不卡视频一区二区三区| 欧美激情免费| 日本精品一区二区三区不卡无字幕| 成人在线观看免费完整| 激情小说网站亚洲综合网| 亚洲网站在线播放| 成人手机在线免费视频| 日韩午夜精品电影| 亚洲成人三级在线| 伊人久久大香线蕉综合影院首页| 快播日韩欧美| 精品亚洲成a人在线观看| 久久成人激情视频| 亚洲视频电影| 强伦人妻一区二区三区| 欧美性做爰猛烈叫床潮| 亚洲av永久纯肉无码精品动漫| 中文字幕无码不卡免费视频| 91在线三级| 亚洲国产毛片完整版| 特级西西444www大精品视频| 成人免费高清完整版在线观看| 天堂网.www在线资源| 久久香蕉视频网站| 在线免费黄色av| 国产精品99久久久久久久vr| 免费欧美电影| 亚洲国产小视频在线观看| 欧美国产乱视频| 欧美日韩综合一区二区三区| 正在播放精油久久| 美女日韩欧美| av网站无病毒在线| 五月婷婷欧美视频| 中文字幕中文字幕在线中高清免费版| 欧美三日本三级三级在线播放| 国产福利精品av综合导导航| 国产视频1区2区3区| 大肉大捧一进一出好爽视频| 日韩欧美中文字幕一区二区| 91嫩草视频在线观看| 日韩福利视频在线| 波霸ol色综合网| 久草视频免费在线播放| 中文字幕第一页在线| 国产极品一区| 中文字幕一区二区三区在线视频| 中文字幕人妻一区二区三区视频| 国产·精品毛片| 性欧美长视频免费观看不卡| 久久国产小视频| 国产福利一区在线观看| 在线色欧美三级视频| 91麻豆产精品久久久久久| 国产精品一区二区三区99| 激情综合色综合久久| 欧美日韩国产精选| 最新天堂资源在线| 亚洲图片综合网| 亚洲激情网站免费观看| 久久久噜噜噜久久| 久久午夜免费视频| 中文字幕+乱码+中文字幕| 东方伊人免费在线观看| 伊人久久五月天| 亚洲调教欧美在线| 97久久香蕉国产线看观看| 一本色道久久综合亚洲精品不| 亚洲精品中文在线观看| 日韩一区二区三区在线视频| 91亚洲国产成人久久精品麻豆| 亚洲高清久久久| 国产黄色网页| 日本黄在线观看| 国产高清自拍视频在线观看| 亚洲久久在线观看| a级大片在线观看| 欧美日韩国产一区二区在线观看| 中文字幕av一区二区三区谷原希美| 精品国产精品国产精品| 尤物网精品视频| 91人人澡人人爽人人精品| 亚洲综合社区| 久久久久久亚洲综合影院红桃| 亚洲性图第一页| 国产精品91视频| 欧美久久一二三四区| 久草在线在线精品观看| 久久99精品国产.久久久久久| 精品人妻一区二区乱码| av日韩在线免费| 亚洲国产成人精品久久久国产成人一区| 精品国偷自产一区二区三区| 欧洲熟妇的性久久久久久| 国产123在线| 欧美一区国产二区| 亚洲成人教育av| 国产精品女主播视频| 蜜芽视频在线观看| 亚洲免费精品视频| 91激情五月电影| 欧美电影网址| 一级视频在线观看视频在线啦啦| 日韩精品毛片| 国产一区二区视频网站| 欧美日韩高清不卡| 国产精品久久久久久模特| 黄网站在线观看永久免费| 九九视频精品全部免费播放| www.亚洲人.com| 91精品一区二区三区蜜桃| 欧美高清激情brazzers| 麻豆视频入口| 国产一区二区在线视频观看| 久久综合国产| 亚洲色大成网站www| 亚洲成a人片77777在线播放| 欧美bbbbxxxx| 亚洲一本大道| yy6080久久伦理一区二区| av小说天堂网| 男人天堂综合| 国产精品7777| 毛片av免费观看| 夜夜骚av一区二区三区| 国产成人亚洲欧美电影| 91精品国产综合久久久蜜臀粉嫩| 亚洲熟女毛茸茸| 超碰色偷偷男人的天堂| 国产精品伦理在线| jazzjazz国产精品久久| 海角社区69精品视频| 天天做天天干天天操| 亚洲日本va在线观看| 久久亚洲无码视频| 8x8ⅹ国产精品一区二区二区| 91麻豆精品国产91久久久久推荐资源| 香蕉久久久久久av成人| 性xxxxbbbb| 91精品中文字幕一区二区三区| 成人性生交大片免费看中文| 亚洲男人都懂的网站| 久热中文字幕在线精品免费| 一不卡在线视频| 日韩精品免费在线观看| 精品国产av鲁一鲁一区| 国产午夜精品久久久| 国产一区二区在线|播放| 好吊一区二区三区视频| av在线播放免费| 国产精品亚洲αv天堂无码| 亚洲午夜久久久久中文字幕| 日韩不卡视频在线观看| 91蜜桃视频在线观看| www.成人69.com| 亚洲欧美日韩综合一区| 一道在线中文一区二区三区| 国产黄色免费观看| 午夜a成v人精品| 久久久久麻豆v国产精华液好用吗| 蜜桃免费网站一区二区三区| 蜜臀av无码一区二区三区| 蜜桃成人免费视频| 久久久亚洲国产精品| 91片在线免费观看| 香蕉久久免费电影| 飘雪影院手机免费高清版在线观看| 精品欧美乱码久久久久久| 成人观看网站a| 成人动漫视频在线观看| 国产成人鲁鲁免费视频a| 999成人网| 一道本在线视频| 老司机午夜免费福利视频| 在线观看欧美黄色| 亚洲欧美精品在线| 免费电影网站在线视频观看福利| 日韩中文一区二区| 亚洲国产日韩精品| 精品在线欧美视频| 天天躁日日躁狠狠躁喷水| 一区二区三区四区电影| 91精品国产综合久久香蕉的用户体验| 国产天堂av| 久久视频在线播放| 精品国产91乱高清在线观看| 人人干狠狠干| 久草精品视频| 日韩夫妻性生活xx| 日本黄色免费| 91夜夜未满十八勿入爽爽影院| 国产成人午夜精品影院观看视频| 亚洲成人自拍偷拍| 亚洲国产中文字幕久久网| 日韩高清欧美激情| www.亚洲一区| 久久精品99无色码中文字幕| 精品不卡一区二区三区| 国产91精品一区二区麻豆网站| 欧美午夜性视频|