久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

pybind11: C++ 工程提供 Python 接口的實例代碼

瀏覽:5日期:2022-07-12 11:45:20

C/C++ 工程提供 Python 接口,有利于融合進 Python 的生態。現在 Python 在應用層,有其得天獨厚的優勢。尤其因為人工智能和大數據的推波助瀾, Python 現在以及未來,將長期是最流行的語言之一。

那 C/C++ 怎么提供 Python 接口呢?

ctypes: C 與 Python 綁定, Python 內建模塊 Boost.Python: C++ 與 Python 綁定, Boost 模塊 pybind11: C++11 與 Python 綁定, 減去了舊 C++ 支持,更輕量化

本文將介紹 pybind11 的環境準備與入門使用。

pybind11: https://github.com/pybind/pybind11

環境準備

pybind11 是一個 header-only 的庫,換句話說,只需要 C++ 項目里直接 include pybind11 的頭文件就能使用。

這里則介紹如何于 CMake 里引入 pybind11 。而更多編譯系統的介紹,可見官方文檔 Build systems 。

獲取 pybind11

可以 git submodule 添加子模塊,最好固定為某個版本:

git submodule add https://github.com/pybind/pybind11.git third_party/pybind11-2.5.0cd third_party/pybind11-2.5.0/git checkout tags/v2.5.0

或者,直接獲取源碼,放進相應子目錄即可。

添加進 CMake

CMakeLists.txt 里 add_subdirectory pybind11 的路徑,再用其提供的 pybind11_add_module 就能創建 pybind11 的模塊了。

cmake_minimum_required(VERSION 3.1)project(start-pybind11 VERSION 0.1.0 LANGUAGES C CXX)set(MY_PYBIND ${MY_CURR}/third_party/pybind11-2.5.0)add_subdirectory(${MY_PYBIND})pybind11_add_module(example_pb example_pb.cpp)

如果想在已有 C++ 動態庫上擴展 pybind11 綁定,那么 target_link_libraries 鏈接該動態庫就可以了。

target_link_libraries(example_pb PUBLIC example)

綁定一個函數

我們先實現一個 add 函數,

int add(int i, int j) { return i + j;}

為了簡化工程,可以直接實現在 example_pb.cpp 里,

#include <pybind11/pybind11.h>namespace py = pybind11;int add(int i, int j) { return i + j;}PYBIND11_MODULE(example_pb, m) { m.doc() = 'example_pb bindings'; m.def('add', &add, 'A function which adds two numbers');}

之后,于 CMakeLists.txt 所在目錄,執行 cmake 編譯就完成了。

示例代碼

first_steps.h first_steps.cc first_steps_pb.cc

綁定一個類

我們先實現一個定時觸發器的類。使用如下:

#include <iostream>#include 'tick.h'int main(int argc, char const *argv[]) { (void)argc; (void)argv; Tick tick(500, 5000); tick.SetTickEvent([&tick](std::int64_t elapsed_ms) { std::cout << 'elapsed: ' << elapsed_ms << ' ms' << std::endl; if (elapsed_ms >= 2000) { tick.Stop(); } }); tick.Start(); tick.WaitLifeOver(); return 0;}

運行結果:

$ ./_output/bin/cpp_thread_callback/tick_testelapsed: 0 mselapsed: 500 mselapsed: 1000 mselapsed: 1500 mselapsed: 2000 ms

該類的聲明如下:

using TickEvent = std::function<void(std::int64_t elapsed_ms)>;using TickRunCallback = std::function<void()>;class Tick { public: using clock = std::chrono::high_resolution_clock; Tick(std::int64_t tick_ms, std::int64_t life_ms = std::numeric_limits<std::int64_t>::max()); Tick(TickEvent tick_event, std::int64_t tick_ms, std::int64_t life_ms = std::numeric_limits<std::int64_t>::max(), TickRunCallback run_beg = nullptr, TickRunCallback run_end = nullptr); virtual ~Tick(); bool IsRunning() const; void Start(); void Stop(bool wait_life_over = false); const std::chrono::time_point<clock> &GetTimeStart() const; void SetTickEvent(TickEvent &&tick_event); void SetTickEvent(const TickEvent &tick_event); void SetRunBegCallback(TickRunCallback &&run_beg); void SetRunBegCallback(const TickRunCallback &run_beg); void SetRunEndCallback(TickRunCallback &&run_end); void SetRunEndCallback(const TickRunCallback &run_end); void WaitLifeOver(); protected: // ...};

然后, pybind11 綁定實現如下:

#include <pybind11/pybind11.h>#include <pybind11/chrono.h>#include <pybind11/functional.h>#include <memory>#include 'cpp/cpp_thread_callback/tick.h'namespace py = pybind11;using namespace pybind11::literals; // NOLINTPYBIND11_MODULE(tick_pb, m) { m.doc() = 'tick_pb bindings'; py::class_<Tick, std::shared_ptr<Tick>>(m, 'Tick') .def(py::init<std::int64_t, std::int64_t>()) .def(py::init<TickEvent, std::int64_t, std::int64_t, TickRunCallback, TickRunCallback>()) .def_property_readonly('is_running', &Tick::IsRunning) .def('start', &Tick::Start) .def('stop', &Tick::Stop, 'wait_life_over'_a = false) .def('get_time_start', &Tick::GetTimeStart) .def('set_tick_event', [](Tick &self, const TickEvent &tick_event) { self.SetTickEvent(tick_event); }) .def('set_run_beg_callback', [](Tick &self, const TickRunCallback &run_beg) { self.SetRunBegCallback(run_beg); }) .def('set_run_end_callback', [](Tick &self, const TickRunCallback &run_end) { self.SetRunEndCallback(run_end); }) .def('wait_life_over', &Tick::WaitLifeOver, py::call_guard<py::gil_scoped_release>());}

編譯出動態庫后,把路徑添加進 PYTHONPATH:

export PYTHONPATH=<path>:$PYTHONPATH# 依賴其他動態庫的話,把路徑添加進 LIBRARY_PATH# Linuxexport LD_LIBRARY_PATH=<path>:$LD_LIBRARY_PATH# macOSexport DYLD_LIBRARY_PATH=<path>:$DYLD_LIBRARY_PATH

之后,就可以于 Python 里調用了:

#!/usr/bin/env python# -*- coding: utf-8 -*-# pylint: disable=missing-docstring, import-errorimport tick_pb as tickdef _main(): t = tick.Tick(lambda elapsed_ms: print(f'elapsed: {elapsed_ms} ms'), 500, 1000, lambda: print('run beg'), lambda: print('run end')) t.start() t.wait_life_over()if __name__ == '__main__': _main()

運行結果:

$ python src/pybind/cpp_thread_callback/tick_test.pyrun begelapsed: 0 mselapsed: 500 mselapsed: 1000 msrun end

示例代碼

tick.h tick.cc tick_test.cc tick_pb.cc tick_test.py

運行示例代碼

獲取代碼,

git clone https://github.com/ikuokuo/start-pybind11.git# 獲取子模塊cd start-pybind11/git submodule update --init

編譯安裝,

# 依賴 cmakecd start-pybind11/make install

編譯結果,

$ tree _install_install├── bin│ └── cpp_thread_callback│ └── tick_test└── lib ├── cpp_thread_callback │ ├── libtick.0.1.0.dylib │ ├── libtick.0.1.dylib -> libtick.0.1.0.dylib │ ├── libtick.dylib -> libtick.0.1.dylib │ ├── tick_pb.0.1.0.cpython-37m-darwin.so │ ├── tick_pb.0.1.cpython-37m-darwin.so -> tick_pb.0.1.0.cpython-37m-darwin.so │ └── tick_pb.cpython-37m-darwin.so -> tick_pb.0.1.cpython-37m-darwin.so └── first_steps ├── first_steps_pb.0.1.0.cpython-37m-darwin.so ├── first_steps_pb.0.1.cpython-37m-darwin.so -> first_steps_pb.0.1.0.cpython-37m-darwin.so ├── first_steps_pb.cpython-37m-darwin.so -> first_steps_pb.0.1.cpython-37m-darwin.so ├── libfirst_steps.0.1.0.dylib ├── libfirst_steps.0.1.dylib -> libfirst_steps.0.1.0.dylib └── libfirst_steps.dylib -> libfirst_steps.0.1.dylib5 directories, 13 files

添加路徑,

$ source setup.bash first_steps cpp_thread_callbackDYLD_LIBRARY_PATH, PYTHONPATH+ /Users/John/Workspace/Self/ikuokuo/start-pybind11/_install/lib/first_steps+ /Users/John/Workspace/Self/ikuokuo/start-pybind11/_install/lib/cpp_thread_callback

運行示例,

$ python src/pybind/cpp_thread_callback/tick_test.pyrun begelapsed: 0 mselapsed: 500 mselapsed: 1000 msrun end

結語

Go coding!

總結

到此這篇關于pybind11: C++ 工程提供 Python 接口的文章就介紹到這了,更多相關pybind11: C++ 工程如何提供 Python 接口內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 欧美 日韩 在线播放 | 欧美日韩精品在线一区 | 国产高清毛片 | 色偷偷888欧美精品久久久 | 国产一区a| 国产黄色在线观看 | 色综合天天综合网国产成人网 | 久久视频一区 | 久久久天天 | 亚洲精品一区在线观看 | 777kkk999成人ww| 欧美在线一区二区三区 | 久久蜜桃av| 国产精品久久久久久吹潮 | 日本一区二区三区视频免费看 | 日日夜夜精品网站 | 色综合社区 | 涩涩视频大全 | 综合久久综合久久 | 国产高清亚洲 | 不卡在线一区 | 在线免费观看毛片 | 久久亚洲高清 | 亚洲欧美中文日韩在线v日本 | 动漫羞免费网站中文字幕 | 日韩精品在线免费 | 一区二区三区视频免费在线观看 | 日韩中文字幕欧美 | 日韩欧美一区二区三区 | 欧美日韩在线播放 | 亚洲免费网址 | 91久久久久久久久久久 | 国产婷婷在线视频 | 久久久久国产一级毛片高清版小说 | 久久久久久久久久一区二区 | 欧美成人精品一区二区男人看 | 国产精品美女久久久 | 精品一区二区三区免费 | 亚洲一区中文 | 日韩在线视频精品 | 久艹精品 | 国产精品一区二区三区四区 | 黄色地址 | 91在线视频观看 | 97综合色 | 天天操天天色天天 | 伊人色播 | 色婷婷久久 | h视频免费看 | 亚洲天堂第一页 | 中文字幕在线精品 | 午夜激情在线免费观看 | 刘亦菲的毛片 | av看片网 | 丁香五月亚洲综合在线 | 精品视频网站 | 日韩精品免费 | 一区二区三区免费 | 国产九九精品 | 狠狠躁夜夜躁人人爽天天天天97 | 国产欧美日韩精品在线 | 九九九在线 | 欧美精品在线观看 | 日本精品999 | 一区二区精品 | 日本淫片 | 山岸逢花在线观看无删减 | 国产一区二区视频免费看 | www.国产| 一区二区不卡 | 久久久久久久久久久久网站 | 欧美日韩国产高清 | 亚洲精品一区在线观看 | 日本一本视频 | 日韩在线永久免费播放 | 欧美日韩高清在线一区 | 色婷婷综合久色 | 在线视频国产一区 | 免费黄色电影在线观看 | 毛片综合 | 国产一级做a爰片在线看免费 | 亚洲欧美一级 | 亚洲成人二区 | 一区二区三区在线不卡 | 亚洲精品一区在线观看 | 国产精品久久久久久久一区探花 | 久久久久久久久久久久久av | 秋霞av电影 | 国产精品一区二区三区av | 久久久av| 99精品99 | 欧美精品一区二区三区在线 | 日韩一区二区三区在线观看 | 超碰激情 | 成人精品一区二区三区中文字幕 | 日韩欧美在线观看 | 国产高清美女一级a毛片久久 | 一区二区三区回区在观看免费视频 | 在线免费日韩 | 国产成人精品免费视频 | 亚洲成人av一区二区三区 | 高清国产一区二区三区 | 亚洲在线 | 精品国产乱码久久久久久久软件 | 91精品一区二区三区久久久久 | 91.成人天堂一区 | 欧美日韩在线播放 | 激情五月综合网 | 99福利视频| 免费在线看a| 亚洲欧美国产精品久久久久 | 久久一区二区三区四区 | av中文字幕第一页 | 亚洲成人av在线 | 99精品免费视频 | 日韩不卡一区 | 日韩精品一区二区在线观看视频 | 九九99 | 精品99在线 | 青娱乐一区 | 伊人网在线视频观看 | 久久久久久国产精品 | 天天操天天色天天 | 亚洲好看站| 久久av综合| 欧美国产精品一区 | 精品亚洲一区二区三区 | 特级生活片| 成年人在线观看视频 | 国产精品成人一区二区 | 欧美视频在线免费看 | 免费中文字幕日韩欧美 | 中文字幕综合在线 | 一级免费av | 国产1级片 | 蜜臀91精品国产高清在线观看 | а√天堂中文在线资源8 | 9久久| 中国一级免费毛片 | 日本三级在线观看中文字 | 欧日韩免费 | 刘亦菲的毛片 | 国产精品视频一区二区三区 | 久草观看| 国产伦精品一区二区三区在线 | 在线一区观看 | 中文字幕日韩欧美 | 亚洲一区中文字幕在线 | 在线天堂av | 成人综合在线观看 | 欧美日韩在线免费观看 | 精品亚洲网 | 国产精品久久国产愉拍 | 国色天香成人网 | 一区二区视频 | 日韩视频www | 国产精品一区二区视频 | 国产免费拔擦拔擦8x高清在线人 | 电家庭影院午夜 | 欧美成年黄网站色视频 | www.99热 | 精品一区二区三区免费 | 躁躁躁日躁夜夜躁 | 日韩视频精品在线 | 特级黄一级播放 | 国产精品久久久久久一区二区三区 | 欧美日韩视频 | 欧美综合一区二区 | 一级毛片免费完整视频 | 欧洲毛片 | 91精品久久久久久久久中文字幕 | 久久66| 涩涩视频在线免费看 | 91av国产精品 | 91亚洲国产成人久久精品网站 | av在线日韩 | 中文字幕在线观看的电影 | 精品久久99 | 另类sb东北妇女av | 久久se精品一区精品二区 | 国产精品久久久久久一区二区三区 | 天天操天天摸天天干 | 久久久久久亚洲一区二区三区蜜臀 | 国产精品女教师av久久 | 伊人热久久婷婷 | 91久久久久久| 欧美片网站免费 | 色欧美视频 | 狠狠躁夜夜躁人人爽天天高潮 | 波多野结衣亚洲 | 伊人久久国产 | 国产成人午夜高潮毛片 | 精品久久久久久久久久久久久 | 日本成人中文字幕 | 色视频网站在线观看 | 欧美一区二区在线 | 99精品欧美一区二区三区综合在线 | 亚洲成av | 亚洲精品不卡 | 久久久91精品国产一区二区精品 | 天天干天天操 | 精品亚洲永久免费精品 | 欧美在线网站 | www日韩| 欧美狠狠操 | 日本视频一区二区三区 | 国产91av视频在线观看 | 日韩在线视频资源 | 曰批免费视频播放免费 | 一区二区手机在线 | 国产在线中文字幕 | 国产精品久久久久毛片软件 | 国产精品日韩欧美一区二区 | 国产成人精品一区二 | 韩日在线观看视频 | www.欧美日韩 | 国产老头老太作爱视频 | 日韩精品视频在线 | 国产精品久久久久婷婷二区次 | 欧美日一区二区 | 50人群体交乱视频 | 日韩1区 | av免费网站在线观看 | 欧美国产综合一区 | 黄色片视频在线观看 | 日韩精品一区二区在线观看视频 | 国产成人99久久亚洲综合精品 | 久久精品一区 | 国产一区二区免费电影 | 狠狠综合久久av一区二区小说 | 色网站在线观看 | 91精品久久久久久 | 日韩在线看片 | 成人一级片视频 | 成人精品视频在线观看 | 9l蝌蚪porny中文自拍 | 天天看天天操 | 伊人网视频在线观看 | 亚洲精品福利网站 | 欧美一区二区三区成人 | 免费观看黄色一级大片 | 日本久久视频 | 亚洲欧洲成人 | 午夜精品久久久久久久男人的天堂 | 欧美日韩三级 | 亚洲欧美精品久久 | 亚洲精品一区久久久久久 | 日韩在线中文字幕 | 成人免费大片黄在线播放 | 国产精品一码二码三码在线 | 中文字幕欧美日韩一区 | 欧美一区永久视频免费观看 | 天天看天天爽 | 久久不卡日韩美女 | 呦一呦二在线精品视频 | 欧美精品一区二区三区在线播放 | 日本妇乱大交xxxxx | 黄色一级毛片在线观看 | 久久天堂电影 | 色性av| 久久久久久91香蕉国产 | 黄色毛片一级 | 国产中文字幕在线观看 | 97在线观看视频 | 亚洲精品一区二区三区蜜桃久 | 国产成人精品久久二区二区91 | 一级免费视频 | 狠狠干网站 | 国产成人精品一区二区三区四区 | 中文字幕在线播放第一页 | 久久综合一区二区 | 久久综合一区二区三区 | 99精品免费观看 | 天天干天天干天天干天天射 | 国产精品久久久久影院色老大 | 亚洲精品视频在线观看免费 | 欧美一级免费观看 | 国产精品国产精品国产专区不片 | 国产精品美女久久 | 在线观看日韩av | 91免费在线播放 | 亚洲国产精品va在线看黑人 | 精品欧美一区二区三区久久久 | 日韩亚洲欧美综合 | 久久国产精品一区二区 | 国产美女久久久 | 国产一区二区毛片 | 国产成人久久 | 91免费在线 | 国产在线观看一区二区 | 一区二区三区无码高清视频 | 欧美一区二区三区四区不卡 | 亚州中文 | 亚洲精品电影在线观看 | 中文字幕欧美在线 | 亚洲男人的天堂网站 | 国产精品久久国产精品 | 91影库| 久久av网 | 欧美日韩在线观看中文字幕 | 国产高清第一页 | 亚洲免费电影一区 | 中文一区 | 亚洲精品影院 | 91视频一区二区 | 久久精品2| 国产成人精品久久二区二区91 | 欧美日在线 | 亚洲精品久久久久999中文字幕 | 国产高清在线 | 久久久亚洲精品中文字幕 | 羞羞视频免费观看入口 | 在线黄av | 欧美一级爆毛片 | 国产精品第一国产精品 | 狠狠色丁香婷婷综合 | 国产一区二区三区av在线 | 精品国产免费久久久久久尖叫 | 成人在线不卡 | 四虎永久免费影院 | 黄网在线免费观看 | 日韩视频在线观看 | 国产精品原创巨作av | 高清国产一区二区三区 | 久久亚洲欧美日韩精品专区 | 99re在线视频 | www狠狠干| 日一日干一干 | 综合网日韩 | 在线看一区| 欧美三级在线 | 国产精品无码久久久久 | 国产精品久久久久久中文字 | 成人看的免费视频 | 天堂在线网 | 亚洲欧美韩国 | 三级无遮挡污在线观看 | 亚洲a视频| 欧美综合激情 | 日韩精品1区2区3区 成人黄页在线观看 | 久久久国产精品入口麻豆 | 91成人一区| 国产成人在线免费观看 | www.精品 | 黄色小视频在线免费观看 | 国产中文区二幕区2012 | h片免费 | 日本在线观看一区 | 日韩综合一区 | 久久精品欧美一区二区三区不卡 | 视频一区 日韩 | 亚洲系列 | 99精品免费观看 | 天堂一区二区三区 | 蜜桃comaaa | 北条麻妃一区二区免费播放 | www.you日本| 黄色网亚洲 | 日日操夜夜操天天操 | 日日爱视频 | 国产精品视频一区二区免费不卡 | 日韩在线观看 | 日韩一区二区影视 | 国产视频99 | 久久在线 | 久久亚洲一区二区三区四区 | av成人在线观看 | 免费观看一级毛片 | 欧美一区在线视频 | 精品国产91亚洲一区二区三区www | 波多野结衣一二三 | 色悠久久久| 免费欧美一级 | 午夜精品久久久久久久 | 手机亚洲第一页 | 日本精品一区 | 久久99精品久久久水蜜桃 | 999精品在线 | av网站在线免费看 | 国产精选一区二区三区 | 成人在线观看h | 亚洲欧美日韩另类精品一区二区三区 | 特级a做爰全过程片 | 日日干夜夜操 | 午夜影院在线观看 | 欧美一级在线播放 | 中文字幕91 | 欧美日韩中文字幕在线 | 成人性生交大片免费看中文带字幕 | 国产h在线 | 亚洲欧美一区二区三区在线 | 男人天堂中文字幕 | 91精品啪啪| √新版天堂资源在线资源 | 国产精品久久久久国产a级 91福利网站在线观看 | 国产精品国产三级国产aⅴ原创 | 操人网站 | av大片网 | 在线观看中文视频 | 欧美2区| 免费一区二区三区 | 黄色毛片免费看 | 成人免费福利视频 | 午夜精品福利网 | 久久精品影片 | 国产精品国产三级国产aⅴ中文 | 日本综合久久 | 久久欧美视频 | 不卡一区二区三区视频 | 日韩在线欧美 | 天天操网 | 国产一极毛片 | 999在线观看精品免费不卡网站 | 毛片99| 91精品啪aⅴ在线观看国产 | 国产精品视频 | 国产精品久久久久久中文字 | 久久精品无码一区二区日韩av | 一区二区三区视频免费看 | 精品欧美一区二区精品久久久 | 蜜桃视频一区 | 精品一二区| 99看 | 中文字幕在线永久在线视频 | 91在线高清 | 欧美激情国产日韩精品一区18 | 日韩精品小视频 | 国产成人亚洲综合 | 亚洲国产网站 | 日韩精品一区二区三区在线 | 97在线观看视频 | www中文字幕 | 国产在线播放av | 最近中文字幕在线视频1 | 在线看www | 一区视频 | 久久国产香蕉视频 | 九九视频在线 | 一级毛片在线 | 欧美一级做a爰片免费视频 亚洲精品一区在线观看 | 国产一区在线观看视频 | 国产视频一区二区 | 特黄视频 | 91视频免费观看网址 | 九色在线播放 | av午夜电影 | 日韩视频精品在线 | 亚洲三区在线观看 | 成人欧美一区二区三区白人 | 欧美成人影院在线 | 国产午夜精品久久久久久久 | www.久久99 | 国产精品久久久久久久久 | 欧美第7页 | 人一级毛片 | 欧美在线视频一区 | 毛片日韩 | 日韩精品av一区二区三区 | 欧美视频在线一区 | 噜噜噜噜噜色 | 亚洲乱码国产乱码精品精 | 久久久久久中文字幕 | 国产成人一区二区三区影院在线 | 无码日韩精品一区二区免费 | 色噜噜在线 | 欧美精品成人一区二区三区四区 | 蜜桃av在线播放 | 欧美一区二区视频 | 欧美中文一区 | 在线只有精品 | 久久久久久久久国产 | 在线国产区 | 免费视频久久 | cao视频| 国产激情综合五月久久 | 亚洲三级在线 | 综合网视频| 在线中文av | 国产 在线 | 日韩 | 毛片国产| 欧美精品一区二区三区在线四季 | 久久99深爱久久99精品 | 黄色天堂网 | 国产伦精品一区二区三区四区视频 | 国产99久久久国产精品 | 激情自拍偷拍 | 一级a性色生活片毛片 | 999精品视频 | 一级毛片免费看 | 午夜在线观看视频 | 亚洲一区二区中文字幕 | 欧美日韩亚洲一区 | 九九亚洲精品 | 国产成人精品免高潮在线观看 | 久久久久久亚洲精品 | 国产精品1区2区在线观看 | 国产视频9999| 久久中文字幕一区二区三区 | 欧美精品一区二区三区免费视频 | 欧美大片网站 | 欧美成人一区二免费视频软件 | 亚洲男人天堂网 | www.一区 | 国产精品久久久久aaaa九色 | 成人在线免费 | 欧美成年网站 | 日本免费一区二区在线观看 | 日韩91| 精品国产一级片 | av激情在线| 久久久久综合 | 亚洲国产成人av | 日韩成人精品 | 久久久久女人精品毛片九一韩国 | 香蕉夜色| 午夜影院在线免费观看 | 国产成人一区二区三区 | 一本大道久久a久久精二百 国产精品片aa在线观看 | 亚洲在线播放 | 亚洲一区二区三区久久 | 亚洲精品91 | 中文字幕在线免费看 | 久久精品久久久久电影 | 自拍视频在线观看 | 99精品欧美一区二区三区综合在线 | 亚洲 欧美 日韩 在线 | 99在线免费视频 | 久久高潮| 亚洲欧美在线一区 | 久久久久久一区 | 日本欧美久久久久免费播放网 | 男人的天堂久久 | 久久久涩| 久久久精彩视频 | 天天碰天天操 | 欧美一区二区三区黄色 | 91伊人| 免费av观看 | 天天色天天射天天操 | 免费国产一区 | 在线播放亚洲 | 黄色片视频在线观看 | 黄色片网站在线免费观看 | 在线成人av | 国产精品一区二区三区99 | 色欧美片视频在线观看 | 亚洲精品一区二区在线观看 | 欧美影 | 91爱爱| 欧美精品一区二区三区免费视频 | 日本免费电影一区 | 国产视频一区二区 | 97在线超碰| 成人国产在线 | 一区二区在线影院 | 精品午夜久久 | 日韩中文字幕在线视频 | 中文字幕在线不卡 | 中文字幕天堂在线 | 国产欧美综合一区二区三区 | 午夜视频| 国产亚洲欧美在线 | 草视频在线 | 人人干天天干 | 99综合在线 | 国产精品久久久久一区二区三区共 | 欧美成人精品在线视频 | 日韩视频网 | 亚洲成av人片一区二区梦乃 | 欧美乱码久久久久久蜜桃 | 久草视频在线播放 | 国产激情视频在线 | 一级黄免费看 | 日韩精品一91爱爱 | 99re6热只有精品免费观看 | 国产福利视频在线观看 | 成人免费视频网站在线看 | 国产h视频在线观看 | 野狼在线社区2017入口 | 欧美午夜视频 | 国产精品成人3p一区二区三区 | 久久婷婷麻豆国产91天堂 | 国产中文 | 99精品视频在线观看 | 亚洲精品久久久久久下一站 | 青青草国产成人av片免费 | 亚洲欧洲精品视频 | 久久免费精品视频 | 综合网激情五月 | 亚洲欧美日韩另类精品一区二区三区 | 伊人精品视频在线观看 | 97理论片| 日韩av电影在线免费观看 | 日韩成人免费电影 | 亚洲一区中文字幕 | 九九综合九九 | 精品一区二区三区在线视频 | 看特级毛片 | jlzzjlzz亚洲日本少妇 | 久久精品91久久久久久再现 | 精品国产鲁一鲁一区二区在线观看 | 国产免费亚洲 | 亚洲97色| 国产成人午夜高潮毛片 | 久久大 | 国产99精品| av免费观看网页 | 五月婷亚洲 | 在线看h| 欧美 日韩 国产 一区 | 亚洲三级在线观看 | 久久久精品高清 | 日韩一区欧美一区 | 免费观看国产精品 | 91在线免费视频 |