色五月色开心色婷婷色丁香,五月婷婷丁香花综合网,婷婷丁香五月激情综合在线,五月婷婷六月丁香动漫,婷婷丁香五月激情综合在线,丁香花中文字幕在线观看,播五月色五月开心五月网,开心激情综合网,狠狠色丁香婷婷综合最新地址,丁香视频在线观看,狠狠做六月爱婷婷综合av,久久激情五月丁香伊人

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

MFC掃雷源碼實(shí)戰(zhàn):VC++項(xiàng)目復(fù)刻與核心邏輯解析

MFC掃雷源碼實(shí)戰(zhàn):VC++項(xiàng)目復(fù)刻與核心邏輯解析 簡介這是一份面向Windows程序設(shè)計(jì)初學(xué)者與MFC進(jìn)階者的掃雷游戲完整開發(fā)資源基于Microsoft Foundation Classes框架實(shí)現(xiàn)幫助讀者理解如何用C類庫構(gòu)建圖形界面、處理消息循環(huán)與用戶交互事件。壓縮包共71個(gè)文件約2.7MB包含7個(gè)cpp源文件與8個(gè)h頭文件承載核心邏輯26個(gè)bmp位圖與2個(gè)ico圖標(biāo)構(gòu)成游戲界面素材另有rc資源腳本、dsp與dsw工程文件及exe可執(zhí)行程序方便直接運(yùn)行與調(diào)試。資源圍繞雷區(qū)隨機(jī)生成、格子標(biāo)記、計(jì)時(shí)統(tǒng)計(jì)等機(jī)制展開通過自定義對話框與按鈕類演示控件布局、消息映射和事件響應(yīng)源碼結(jié)構(gòu)清晰適合對照閱讀以掌握MFC與Windows消息機(jī)制的結(jié)合方式。目前已有475人學(xué)習(xí)下載可作為課程設(shè)計(jì)或自學(xué)練手的實(shí)踐參考。1. 用 MFC 復(fù)刻掃雷一份能直接編譯運(yùn)行的 VC 源碼項(xiàng)目很多人第一次接觸 Windows 桌面開發(fā)都是從 MFC 開始的而掃雷這個(gè)經(jīng)典小游戲幾乎是繞不開的練手項(xiàng)目。這份源碼包給的是一個(gè)完整的、基于 MFC 框架實(shí)現(xiàn)的掃雷程序打開解決方案就能編譯跑起來就是一個(gè)帶菜單、帶狀態(tài)欄、能正常判雷判勝的標(biāo)準(zhǔn) Windows 窗口程序。它適合兩類人一類是剛學(xué)完 C 語法、想找個(gè)能跑起來的完整項(xiàng)目練手的同學(xué)另一類是想回頭補(bǔ)一補(bǔ) MFC 消息映射、GDI 繪圖、文檔視圖這套老框架的開發(fā)者。整個(gè)項(xiàng)目不依賴任何第三方庫純 Win32 MFC代碼量適中邏輯清晰拿來當(dāng)二次開發(fā)的底子非常合適。2. 項(xiàng)目結(jié)構(gòu)與技術(shù)選型MFC 單文檔框架怎么撐起一個(gè)掃雷2.1 為什么用 MFC 單文檔而不是對話框掃雷這個(gè)程序表面上看是個(gè)小游戲但它有菜單欄、有客戶區(qū)繪圖、有狀態(tài)欄顯示剩余雷數(shù)這幾樣?xùn)|西湊在一起用對話框程序做會顯得很別扭。對話框程序天生是給表單輸入用的客戶區(qū)被各種控件占滿想在上面自由畫格子反而要繞一圈。單文檔SDI框架就不一樣了它天然帶一個(gè)主框架窗口、一個(gè)菜單資源、一個(gè)視圖類視圖類的OnDraw就是給你畫東西用的狀態(tài)欄也能通過框架類掛上去。這份源碼走的就是標(biāo)準(zhǔn) SDI 路線核心類大概這么幾個(gè)類名職責(zé)C掃雷App應(yīng)用程序類負(fù)責(zé)初始化CMainFrame主框架窗口管菜單和狀態(tài)欄C掃雷View視圖類負(fù)責(zé)繪制棋盤、處理鼠標(biāo)點(diǎn)擊C掃雷Doc文檔類存棋盤數(shù)據(jù)雷區(qū)、翻開狀態(tài)數(shù)據(jù)放 Doc、顯示放 View這是 MFC 文檔視圖架構(gòu)的基本分工。棋盤數(shù)據(jù)每個(gè)格子是不是雷、有沒有被翻開、周圍雷數(shù)全部存在文檔類里視圖類只負(fù)責(zé)根據(jù)文檔數(shù)據(jù)畫出來鼠標(biāo)點(diǎn)擊也是先轉(zhuǎn)成對文檔數(shù)據(jù)的修改再觸發(fā)重繪。這個(gè)分工的好處是以后想加存檔功能直接序列化文檔類就行視圖不用動。2.2 目錄結(jié)構(gòu)長什么樣解壓源碼后目錄大致是這樣掃雷/ ├── 掃雷.sln // VS 解決方案文件 ├── 掃雷/ │ ├── 掃雷.vcxproj // 項(xiàng)目文件 │ ├── 掃雷.h / .cpp // 應(yīng)用程序類 │ ├── MainFrm.h / .cpp // 主框架窗口 │ ├── 掃雷Doc.h / .cpp // 文檔類棋盤數(shù)據(jù) │ ├── 掃雷View.h / .cpp // 視圖類繪圖與交互 │ ├── StdAfx.h / .cpp // 預(yù)編譯頭 │ ├── res/ // 圖標(biāo)、菜單等資源 │ └── resource.h // 資源 ID 定義這個(gè)結(jié)構(gòu)是 VS 向?qū)傻臉?biāo)準(zhǔn) MFC 工程結(jié)構(gòu)沒有多余的東西。res目錄里放的是菜單資源和圖標(biāo)菜單里一般會有「游戲」菜單下面掛「初級」「中級」「高級」和「重新開始」幾個(gè)菜單項(xiàng)。resource.h 里定義這些菜單項(xiàng)的 ID消息映射里通過 ID 來響應(yīng)。2.3 核心數(shù)據(jù)結(jié)構(gòu)棋盤怎么存棋盤數(shù)據(jù)是整個(gè)程序的地基存得好不好直接決定后面寫起來順不順。常見做法是用一個(gè)二維數(shù)組每個(gè)格子用一個(gè)結(jié)構(gòu)體或者一個(gè)整數(shù)編碼。這份源碼里文檔類里大概會定義這么幾個(gè)成員// 掃雷Doc.h 中的核心數(shù)據(jù)成員 class C掃雷Doc : public CDocument { public: int m_nRows; // 行數(shù) int m_nCols; // 列數(shù) int m_nMines; // 總雷數(shù) int m_nFlags; // 已插旗數(shù) int m_nRemain; // 剩余未翻開格子數(shù) BOOL m_bGameOver; // 游戲是否結(jié)束 // 每個(gè)格子的狀態(tài)用二維數(shù)組存 // 低 4 位存周圍雷數(shù)高位存標(biāo)志位 BYTE** m_pBoard; };這里用BYTE**動態(tài)申請二維數(shù)組而不是固定大小的int board[16][16]是為了支持初級、中級、高級三種不同尺寸的棋盤。初級 9×9 共 10 雷中級 16×16 共 40 雷高級 16×30 共 99 雷尺寸變了數(shù)組也得跟著變所以用動態(tài)申請。每個(gè)BYTE里塞了兩種信息低 4 位存這個(gè)格子周圍有幾顆雷0 到 8高位用幾個(gè) bit 分別表示「是不是雷」「有沒有翻開」「有沒有插旗」。這種位運(yùn)算的存法在 C 語言寫的小游戲里很常見省內(nèi)存判斷起來也快。比如判斷一個(gè)格子是不是雷就是m_pBoard[r][c] MINE_BIT翻開就是m_pBoard[r][c] | OPEN_BIT。提示如果你打算二次開發(fā)建議先把這幾個(gè) bit 的含義在頭文件里用宏定義清楚別用魔法數(shù)字不然過兩天自己都看不懂。3. 核心邏輯拆解布雷、翻開、遞歸展開與勝負(fù)判定3.1 布雷為什么第一次點(diǎn)擊不能踩雷掃雷有個(gè)約定俗成的規(guī)矩第一次點(diǎn)擊絕對不能踩雷。如果一開始就把雷布好玩家第一下就點(diǎn)中雷那體驗(yàn)就太差了。所以正規(guī)做法是等玩家第一次點(diǎn)擊之后再布雷并且要避開玩家點(diǎn)的那一格以及它周圍八格。這份源碼里布雷邏輯大概長這樣// 在第一次點(diǎn)擊后調(diào)用避開點(diǎn)擊位置 (clickR, clickC) void C掃雷Doc::PlaceMines(int clickR, int clickC) { int placed 0; srand((unsigned)time(NULL)); // 用時(shí)間做隨機(jī)種子 while (placed m_nMines) { int r rand() % m_nRows; int c rand() % m_nCols; // 跳過已經(jīng)放了雷的格子 if (m_pBoard[r][c] MINE_BIT) continue; // 跳過第一次點(diǎn)擊位置及其周圍八格 if (abs(r - clickR) 1 abs(c - clickC) 1) continue; m_pBoard[r][c] | MINE_BIT; placed; } // 布雷完成后計(jì)算每個(gè)格子周圍的雷數(shù) CalcAdjacentMines(); }這段邏輯有幾個(gè)點(diǎn)值得說。第一隨機(jī)種子用time(NULL)保證每次開局雷的分布不一樣。第二abs(r - clickR) 1 abs(c - clickC) 1這個(gè)判斷把點(diǎn)擊位置周圍 3×3 的區(qū)域全部排除掉這樣第一下點(diǎn)開至少能展開一片不會一點(diǎn)就死。第三布雷和計(jì)算周圍雷數(shù)是分開的兩步先全部布完再統(tǒng)一算避免邊布邊算導(dǎo)致統(tǒng)計(jì)不準(zhǔn)。CalcAdjacentMines就是遍歷每個(gè)非雷格子數(shù)它周圍八格里有多少個(gè)雷把結(jié)果寫進(jìn)低 4 位。這個(gè)函數(shù)寫起來就是兩層循環(huán)加一個(gè)八方向偏移數(shù)組屬于體力活但必須寫對不然數(shù)字顯示會錯。3.2 翻開格子遞歸展開那一片空白掃雷最爽的瞬間就是點(diǎn)一下嘩啦展開一大片。這個(gè)效果靠的是遞歸展開點(diǎn)到一個(gè)周圍雷數(shù)為 0 的格子就把它周圍八格也翻開如果周圍八格里還有雷數(shù)為 0 的繼續(xù)遞歸。// 翻開 (r, c)如果是空白格則遞歸展開 void C掃雷Doc::OpenCell(int r, int c) { // 越界、已翻開、已插旗都不處理 if (r 0 || r m_nRows || c 0 || c m_nCols) return; if (m_pBoard[r][c] OPEN_BIT) return; if (m_pBoard[r][c] FLAG_BIT) return; // 標(biāo)記為已翻開 m_pBoard[r][c] | OPEN_BIT; m_nRemain--; // 如果踩到雷游戲結(jié)束 if (m_pBoard[r][c] MINE_BIT) { m_bGameOver TRUE; return; } // 如果周圍沒有雷遞歸展開周圍八格 int adj m_pBoard[r][c] 0x0F; if (adj 0) { for (int dr -1; dr 1; dr) for (int dc -1; dc 1; dc) OpenCell(r dr, c dc); } }遞歸的終止條件有三個(gè)越界、已經(jīng)翻開、插了旗。這三個(gè)判斷缺一不可少了任何一個(gè)都會出問題。少了越界判斷會數(shù)組越界崩潰少了已翻開判斷會無限遞歸棧溢出少了插旗判斷會把玩家標(biāo)記的旗子沖掉。m_nRemain是剩余未翻開格子數(shù)每翻開一個(gè)減一減到等于雷數(shù)的時(shí)候說明所有非雷格子都翻開了游戲勝利。這個(gè)判定放在視圖類里每次翻開后檢查一下。注意遞歸展開在高級棋盤16×30上最壞情況遞歸深度可能接近 480 層一般不會棧溢出但如果你把棋盤改得特別大就要考慮改成用棧模擬或者隊(duì)列的迭代寫法。3.3 右鍵插旗與勝負(fù)判定右鍵插旗的邏輯比左鍵簡單就是切換格子的 FLAG_BIT同時(shí)更新剩余雷數(shù)顯示。但有幾個(gè)細(xì)節(jié)要注意已經(jīng)翻開的格子不能插旗插旗數(shù)量不能超過總雷數(shù)有些版本允許超過但會顯示負(fù)數(shù)體驗(yàn)不好。// 右鍵點(diǎn)擊切換插旗狀態(tài) void C掃雷Doc::ToggleFlag(int r, int c) { if (m_pBoard[r][c] OPEN_BIT) // 已翻開不能插旗 return; if (m_pBoard[r][c] FLAG_BIT) { m_pBoard[r][c] ~FLAG_BIT; // 取消旗子 m_nFlags--; } else { if (m_nFlags m_nMines) // 旗子數(shù)不能超過雷數(shù) return; m_pBoard[r][c] | FLAG_BIT; m_nFlags; } }勝負(fù)判定分兩種。輸?shù)那闆r很簡單翻開到雷就m_bGameOver TRUE然后把所有雷顯示出來。贏的情況是m_nRemain m_nMines也就是剩下的未翻開格子全是雷這時(shí)候自動把所有雷插上旗彈個(gè)提示。狀態(tài)欄上一般會顯示兩個(gè)數(shù)字剩余雷數(shù)總雷數(shù)減去已插旗數(shù)和用時(shí)。用時(shí)用一個(gè)SetTimer每秒更新一次游戲結(jié)束時(shí)KillTimer。4. 視圖繪制與消息響應(yīng)格子怎么畫、鼠標(biāo)怎么響應(yīng)4.1 OnDraw 里怎么畫棋盤MFC 的繪圖全靠CDC類視圖類的OnDraw(CDC* pDC)是繪制入口。畫掃雷棋盤核心就是兩層循環(huán)遍歷每個(gè)格子根據(jù)格子狀態(tài)決定畫什么。void C掃雷View::OnDraw(CDC* pDC) { C掃雷Doc* pDoc GetDocument(); if (!pDoc || !pDoc-m_pBoard) return; int cellSize 20; // 每個(gè)格子 20 像素 for (int r 0; r pDoc-m_nRows; r) { for (int c 0; c pDoc-m_nCols; c) { int x c * cellSize; int y r * cellSize; CRect rect(x, y, x cellSize, y cellSize); BYTE cell pDoc-m_pBoard[r][c]; if (cell OPEN_BIT) { // 已翻開畫灰色背景 pDC-FillSolidRect(rect, RGB(200, 200, 200)); pDC-Rectangle(rect); if (cell MINE_BIT) { // 是雷畫個(gè)紅圓表示 pDC-Ellipse(rect); } else { int adj cell 0x0F; if (adj 0) { // 畫數(shù)字不同數(shù)字用不同顏色 CString str; str.Format(_T(%d), adj); pDC-SetTextColor(GetNumColor(adj)); pDC-DrawText(str, rect, DT_CENTER | DT_VCENTER | DT_SINGLELINE); } } } else { // 未翻開畫凸起的按鈕效果 pDC-FillSolidRect(rect, RGB(192, 192, 192)); pDC-Draw3dRect(rect, RGB(255, 255, 255), RGB(128, 128, 128)); if (cell FLAG_BIT) { // 插旗畫個(gè)紅旗 DrawFlag(pDC, rect); } } } } }這段代碼里FillSolidRect填背景Draw3dRect畫立體邊框DrawText畫數(shù)字。數(shù)字顏色用一個(gè)輔助函數(shù)GetNumColor根據(jù)數(shù)字返回不同顏色經(jīng)典掃雷里 1 是藍(lán)色、2 是綠色、3 是紅色這個(gè)可以自己定。DrawFlag是畫旗子的輔助函數(shù)可以用Polygon畫個(gè)三角形加個(gè)桿也可以用現(xiàn)成的圖標(biāo)資源DrawIcon。源碼里用的是哪種打開 View 類的 cpp 一看便知。4.2 鼠標(biāo)消息怎么轉(zhuǎn)成格子坐標(biāo)視圖類要響應(yīng)WM_LBUTTONDOWN和WM_RBUTTONDOWN兩個(gè)消息通過類向?qū)砑覱nLButtonDown和OnRButtonDown處理函數(shù)。消息映射宏長這樣BEGIN_MESSAGE_MAP(C掃雷View, CView) ON_WM_LBUTTONDOWN() ON_WM_RBUTTONDOWN() ON_WM_TIMER() END_MESSAGE_MAP()處理函數(shù)里關(guān)鍵是把鼠標(biāo)的像素坐標(biāo)轉(zhuǎn)成棋盤的行列號void C掃雷View::OnLButtonDown(UINT nFlags, CPoint point) { C掃雷Doc* pDoc GetDocument(); if (pDoc-m_bGameOver) return; int cellSize 20; int c point.x / cellSize; int r point.y / cellSize; // 越界檢查 if (r 0 || r pDoc-m_nRows || c 0 || c pDoc-m_nCols) return; // 第一次點(diǎn)擊才布雷 if (!pDoc-m_bMinesPlaced) { pDoc-PlaceMines(r, c); pDoc-m_bMinesPlaced TRUE; SetTimer(1, 1000, NULL); // 啟動計(jì)時(shí)器 } pDoc-OpenCell(r, c); // 檢查勝負(fù) if (pDoc-m_bGameOver || pDoc-m_nRemain pDoc-m_nMines) { KillTimer(1); pDoc-m_bGameOver TRUE; } Invalidate(); // 觸發(fā)重繪 CView::OnLButtonDown(nFlags, point); }坐標(biāo)轉(zhuǎn)換就是簡單的除法point.x / cellSize得到列號point.y / cellSize得到行號。這里有個(gè)容易翻車的地方如果棋盤不是從客戶區(qū)左上角開始畫的比如留了邊距那除法之前要先減去邊距。源碼里如果沒留邊距就直接除。Invalidate()會觸發(fā)OnDraw重繪整個(gè)棋盤重畫一遍。對于 16×30 的棋盤480 個(gè)格子重畫一次的開銷很小不用做局部刷新優(yōu)化。4.3 菜單與狀態(tài)欄菜單響應(yīng)通過ON_COMMAND宏綁定到框架類或者視圖類的處理函數(shù)。比如「初級」菜單項(xiàng) ID 是ID_GAME_BEGINNER處理函數(shù)里就把文檔的棋盤重置成 9×9 10 雷。void CMainFrame::OnGameBeginner() { C掃雷Doc* pDoc (C掃雷Doc*)GetActiveDocument(); pDoc-NewGame(9, 9, 10); GetActiveView()-Invalidate(); }狀態(tài)欄的創(chuàng)建在CMainFrame::OnCreate里用CStatusBar類設(shè)置幾個(gè)窗格分別顯示剩余雷數(shù)和用時(shí)。更新狀態(tài)欄用SetPaneText在視圖類里每次操作后調(diào)用。// 狀態(tài)欄窗格定義 static UINT indicators[] { ID_SEPARATOR, // 第一個(gè)窗格顯示提示信息 ID_INDICATOR_MINES, // 剩余雷數(shù) ID_INDICATOR_TIME, // 用時(shí) };ID_INDICATOR_MINES和ID_INDICATOR_TIME是在 resource.h 里自定義的 ID字符串資源里給個(gè)初始寬度。更新的時(shí)候CString str; str.Format(_T(雷: %d), pDoc-m_nMines - pDoc-m_nFlags); m_wndStatusBar.SetPaneText(1, str);5. 避坑與常見問題編譯、運(yùn)行、邏輯上的那些坑5.1 編譯報(bào)錯「無法打開包括文件 afxwin.h」現(xiàn)象用 VS 打開解決方案一編譯就報(bào)找不到afxwin.h。原因MFC 不是 VS 默認(rèn)安裝的組件安裝 VS 的時(shí)候如果沒有勾選「MFC 和 ATL 支持」就會缺這個(gè)頭文件。解決打開 Visual Studio Installer找到當(dāng)前 VS 版本點(diǎn)「修改」在「單個(gè)組件」里搜索 MFC勾選「適用于最新 v143 生成工具的 C MFC」裝完重啟 VS 再編譯。5.2 運(yùn)行起來棋盤畫不出來一片空白現(xiàn)象程序能跑窗口也出來了但客戶區(qū)是白的沒有格子。原因OnDraw里沒有正確獲取文檔指針或者m_pBoard還是空指針。常見的是GetDocument()返回了 NULL或者棋盤數(shù)據(jù)還沒初始化就調(diào)用了重繪。解決在OnDraw開頭加個(gè)判空if (!pDoc || !pDoc-m_pBoard) return;。然后在OnInitialUpdate或者OnNewDocument里確保棋盤數(shù)據(jù)已經(jīng)申請好。如果是 SDI 程序OnInitialUpdate會在窗口顯示前調(diào)用一次適合做初始化。5.3 第一次點(diǎn)擊就踩雷現(xiàn)象開局第一下點(diǎn)下去直接炸了。原因布雷邏輯沒有排除第一次點(diǎn)擊位置或者布雷時(shí)機(jī)不對在點(diǎn)擊之前就把雷布好了。解決確認(rèn)布雷是在OnLButtonDown里、調(diào)用OpenCell之前才執(zhí)行的并且PlaceMines里排除了點(diǎn)擊位置周圍 3×3 區(qū)域。如果源碼里是開局就布雷那就要改成延遲布雷加一個(gè)m_bMinesPlaced標(biāo)志位。5.4 遞歸展開導(dǎo)致棧溢出崩潰現(xiàn)象點(diǎn)開一片空白區(qū)域程序直接閃退。原因遞歸展開沒有正確終止或者棋盤數(shù)據(jù)有環(huán)導(dǎo)致無限遞歸。解決檢查OpenCell里的三個(gè)終止條件是否都寫了越界、已翻開、已插旗。特別是「已翻開」這個(gè)判斷必須在遞歸調(diào)用之前就標(biāo)記當(dāng)前格子為已翻開否則遞歸回來又會重新處理。另外如果棋盤特別大可以把遞歸改成用std::stack或std::queue的迭代寫法。5.5 狀態(tài)欄數(shù)字不更新現(xiàn)象插旗、翻開格子狀態(tài)欄上的剩余雷數(shù)一直不變。原因狀態(tài)欄更新代碼沒調(diào)用或者調(diào)用了但窗格索引寫錯了。解決確認(rèn)每次操作后都調(diào)用了SetPaneText并且索引對應(yīng)的是雷數(shù)那個(gè)窗格。SetPaneText的第一個(gè)參數(shù)是窗格索引從 0 開始如果狀態(tài)欄有三個(gè)窗格雷數(shù)一般是索引 1。另外SetPaneText之后可能需要調(diào)用m_wndStatusBar.UpdateWindow()強(qiáng)制刷新。6. 二次開發(fā)怎么改從換皮到加功能的幾條路子拿到這份源碼最直接的改法就是換皮。把OnDraw里的FillSolidRect顏色改一改格子大小從 20 改成 30數(shù)字顏色換一套就是一個(gè)新版本。如果想做得好看點(diǎn)可以把格子繪制換成貼圖用CImage加載幾張 png根據(jù)格子狀態(tài)Draw上去比純色塊好看得多。再進(jìn)一步可以加功能。比如加一個(gè)「提示」按鈕點(diǎn)一下自動翻開一個(gè)安全格子加一個(gè)「撤銷」功能記錄每一步操作用棧存起來點(diǎn)撤銷就回退。撤銷這個(gè)功能要注意遞歸展開一次會翻開很多格子撤銷的時(shí)候要一次性全部回退所以記錄的時(shí)候要記錄整批操作而不是單個(gè)格子。還有一個(gè)常見的改造方向是加難度自定義?,F(xiàn)在只有初級、中級、高級三檔可以加一個(gè)對話框讓用戶輸入行數(shù)、列數(shù)、雷數(shù)然后動態(tài)生成棋盤。這個(gè)改動主要涉及文檔類的NewGame函數(shù)讓它接受參數(shù)以及視圖類根據(jù)新的行列數(shù)重新計(jì)算窗口大小。// 自定義難度動態(tài)調(diào)整棋盤 void C掃雷Doc::NewGame(int rows, int cols, int mines) { // 釋放舊棋盤 if (m_pBoard) { for (int i 0; i m_nRows; i) delete[] m_pBoard[i]; delete[] m_pBoard; } m_nRows rows; m_nCols cols; m_nMines mines; m_nFlags 0; m_nRemain rows * cols; m_bGameOver FALSE; m_bMinesPlaced FALSE; // 申請新棋盤全部清零 m_pBoard new BYTE*[rows]; for (int i 0; i rows; i) { m_pBoard[i] new BYTE[cols]; memset(m_pBoard[i], 0, cols * sizeof(BYTE)); } }這個(gè)NewGame里內(nèi)存釋放和申請要配對不然反復(fù)開新局會內(nèi)存泄漏。m_nRemain初始值是總格子數(shù)布雷之后不會變每翻開一個(gè)減一減到等于雷數(shù)就是勝利。改完邏輯驗(yàn)證的時(shí)候有個(gè)小技巧把雷數(shù)設(shè)成 0然后點(diǎn)開一個(gè)格子應(yīng)該嘩啦全翻開直接勝利。再把雷數(shù)設(shè)成總格子數(shù)減一點(diǎn)開一個(gè)格子應(yīng)該只翻開那一格周圍全是雷。這兩個(gè)極端情況跑通了基本邏輯就沒大問題。我自己的習(xí)慣是每次改完棋盤相關(guān)的代碼都先用 9×9 10 雷跑一遍完整流程開局、點(diǎn)開一片、插幾個(gè)旗、踩一次雷、再重開一局。這套走下來沒問題才敢往大了改。掃雷這項(xiàng)目看著簡單但遞歸展開和位運(yùn)算這兩塊稍不留神就翻車多跑幾遍不丟人。希望這份源碼能幫你把 MFC 這套老框架撿起來改出點(diǎn)自己的東西。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
人妻娇喘 激情视频| 亚洲激情在线观看一区| 东北女人操比视频| 偷窥自拍亚洲色图| 日本在线不卡一二区| 中国国产精品一区视频| 大香蕉www.超碰| 一级黄色性爱裸体视频| 射综合网| 亚洲国产日韩欧美熟妇在线| 欧美 中文字幕 一区| 超碰97导航| 大香蕉免费3| 精品91日日夜夜超清资源| 在线中文字幕视频| 精品成人无码| 欧洲色色| 嗯嗯啊好大| 国产人妻久久精品一区二区三区| 国产精品三级视频网站| 日本韩欧美在线播放a| 国产精品com| 久久蜜桃一区二区| 97精品在线视频| 超碰97导航| 欧美综合网1| 成人色女网| 天天插天天插| 国产精品久久久久久久久久久久久久久久久久 | 男女激情黄色网址| 中文字幕一区 二区三四五 区日 日骚| 91影库| 欧美一二三区四五区| 亚洲啪啪综合?v一区综合精品区| 日本一级一级一级一级| 亚州图片第一页| 婷婷丁香五月天综合东京热| 欧美日韩青操| 国产精品女aA片爽爽视频| 蜜桃臀av在线观看| 久久9亚洲| 北条麻妃99精品青青久久| 老司机福利青青草| 五月婷婷丁香| 99这里有精品视频| 九九九九九九九九九九九免费国产| 国产亚洲精品玖玖玖在线观看| 久久精品国产99精品亚洲蜜...| 日本人妻丰满熟妇久久久久久| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 伊人久大| 另类天堂| 93人人操人人| 熟妇操花| 超碰久久性爱| 国产1727欧美| av影院十区| 神马午夜久久| 国产精品点击进入在线影院| 亚洲精品成人激情在线| 资源在线观一 二| 91逼逼女人91| 嗯嗯啊啊好大好爽| 国语精品av| 亚洲中文字幕在现观看| 久久无码电影| 国产极品999| 九月丁香婷婷| 一区e区三| 欧美情色亚洲| 国产一级内射无挡观看| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 中文字幕人妻丝袜| 欧亚第一综合网| 伊人96在线| 人妻另类| 熟女激情综合网| 国产高清精品福利| 九九国产| 极品欧美一区二区三区| 国产精品亚洲一区二区三区四区| 宅男91视频在线播放| 日日橹狠狠爱欧美超碰| 男人的天堂com| 大黄片做爱的大的| 红桃视频高潮| 日韩无码第3页| 日欧操屄| 精品区9| 97日视频| 亚洲一区二区三区在线激情| 五月丁香婷婷色| 色综和网| 亚洲一级黄色毛片| 亚洲日韩一区电影| 国内外毛片在线观看| 超清中文乱码字幕| 午夜一区| 伊人在线大香蕉视频久久| 少妇综合| ,国产乱人伦精品一区二区三区| a片亚洲一本通视频| 色吧5亚洲| 麻豆2区1区天美| 超碰在线成人电影| 日韩国产欧美伦理在线| 日本最新1区2区3区| 97AV在线观看| 一区二区偷拍拍视频| 香蕉国产97| 国产Aα| 国产精品经典一卡久久久| 国产网站在线播放| 北野未奈加勒比av| 国产福利av精彩对白| 亚州色阁| 亚洲中文国际强奸字幕| 亚州九九九精品视频| 亚洲熟伦熟妇AV无码春色| 精品久久久久久亚洲| 久久黄人人爽视频| 伊人97色天使| 熟妇乱伦一区二区| 一本一道久久综合久久| 黄片不用下载在线观看| 亚洲一二三四区在线免费看视频| 夜色AV无码手机在线影院| 中国黑人三级片网站上区| 久久的免费性爱视频| 国产黄a三级三级三级av在线看| 91亚洲最新在线| 立川理惠无码一区二区| 热热色91| 91色爽欧美| 九月激情婷婷| 最新9久久久9免费视频| 色爱综合网| 超碰九区| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 91性网| 激情五月天婷婷| 97狠狠| 欧美人妻精品| 久久久久亚洲AV无码专区少妇| 亚热日本熟女| 成片免费播放| 精品无码久久久久久久杏吧| 91在线丝袜视频| 亚洲精品aa久久伊人| 水滴偷拍| 亚洲人妻熟妇三十三区| 淫荡熟女乱伦网| 麻豆色约约| 六六久久日韩不卡| 性开放中文AV高清无码免费看| 国产欧美日产一区二区三区 - 国产欧美日 | 黄片视频观看| 2019亚洲男人天堂| 女色视频社区| 日韩精品碰碰| 亚洲男人天堂网| 成人一区二区三区四区| 欧美亚洲日韩人妻在线观看| 成人av福利在线观看| 久久宗合亚洲| 9 7超碰在线免费观看| 欧美成人性爱视频免费观看| 亚洲在饯| 97超碰影音| 中文字幕精品探花视频| 99热99re6国产在线播放| 色五月首页| 天天操夜夜操| 黑人免费福利视频| 日韩猛交| 日本精品一区二区三| 蜜伊人色综合97| 全球成人中文在线| 欧美综合娱乐久久| 亚洲综合影院| 男女无套 免费网站| 青操影院| 国产乱码久久久久久| 9久久9综合| 二色av| 国产日韩精品人妻久久久久色欲网站| 98人妻精品一区二区色欲| 青青草影视蜜久久| 亚洲999综合| 亚射在线| 1024亚洲中文字幕久在线看片你懂的| 色色婷婷五月| 屌逼麻豆| 人妻天天夜夜爽一区二区| 日本性爱网址| 欧美十八禁导航成人| 国产丝袜美女在线一区| 国产精品午夜福利亚洲综合网| 亚州性色| 夜夜躁狠狠躁日日躁av| 一区二区三| 国产在线激情| av2014 日韩在线中文字幕| 人妻熟女一区二区| 五毛骚逼极品美女怕怕| 噜噜噜久久亚洲精品色情| 色女99一级片在线观看| 丝袜综合色图| 在线观看A啊啊啊| 五月天伊人| 2025亚洲男人天堂| 亚洲视频小说| 二三四区精品| 天天夜夜rb| 97久久久久| 五月婷婷六月天| 粉嫩绯色AV一区二区在线| 成人亚欧免费视频| 国产免费永久精品无码| 久久久久精| 好吊色在线观看| 亚州情色j区| 97超碰逼| 超碰色图| 久久久新亚洲AV| 欧美成人一级麻豆| 高清无码 国产精品| 国产又大又硬又长又粗| 人妻人人操| 一二三四免费视频| 日韩啪啪视频| 婷婷激情五月综合| 蜜色网色哟哟| 男人天堂网站| 98人妻精品一区二区色欲| 丝袜美腿亚洲| 无码日韩人妻av一| 99热这里都是精品| 鸥美插入视频| 大但人体久久久久| 中文操逼字幕| 国产极品99热在线播放69| 亚洲黄色a级片| 伊人天堂在线| 精品9区| 久久亚洲欧美中文字幕国语| 岛国大片在线观看网站入口| 99热成人| 日产123区精品免费观看| 久久久九| 尤物一级在线免费观看| 韩国女主播青草福利视频| 少妇极品熟妇人妻无码| 青青草依人大香蕉| 两女互慰AV高潮喷水在线观看| 日本性爱少妇| 偷拍欧美激情| 一本色道久久综合精品婷婷| 午夜男女爽爽爽影院视频| 国产AV无码AV| 欧美成人亚洲精品| 日夜伊人网| 操逼www.| 91九九九小逼| 超碰97色| 2020视频1区2区3区| 老汉网| 91美女视频在线观看| 另类小说综合网| 免费观看欧美日韩操逼视频| 人妻超碰青青草98| 国产精品无码久久久久2025| 青青草视频这里只有精品| 色爽——AV| 国产曰批免费观看久久久| 又黄又爽在线观看视频| 大奶的诱惑| 欧美成人黄网色网站| 午夜啊啊啊| 久久 精品| 亚洲精品成人激情在线| 色噜噜日韩精品| 国产乱伦亚洲| 啊灬快c我灬啊灬用力灬啊灬-国产精品性做久久久久久-成人AV | 国产成人亚洲精品无码古代早漏男 | 欧美日韩国产电影| 久久精品国产精品一区| AV天堂电影网| 亚洲天堂久久久久久粉红视频| 天天色播| 四虎影视欧美| 国产欧美第五页| 国产夫妻性生活视频| 乱论91| 91精品婷婷国产综合久久竹菊| 啊啊啊好想要| 日本三级人妻a人妻一在线| 国产熟女一区二区| 欧美激情综合色综合啪啪五月| 中文字幕欧美日本乱码一线二线| 日本操逼视频导航| 色网1| 最新的亚洲无吗| 91久久久老司机| 久久久亚洲高清不打码| 51一区二区三区| www.91久久| 亚洲骚男同com| 校园春色综合| www.亚洲黄色| 精品九九九九九九九九九| 在线观看无码三级少妇| 人妻少妇精品久久久| 日本性爰一道本| 91草草草| 久久久麻豆精品| 日日AAvv| 亚洲91色在线| 啪一啪免费视频| 大屁股熟女一区二区三区| 国产精品一区二区黄片| 欧差乱伦二三| 熟妇高潮精品一区二区三区下载| 激情视屏国产乱伦强奸| 在线播放欧洲免费av| 欧美日韩国产中文超碰| 亚洲欧洲自拍图片专区满春格| 97 国产一区| 久久亚洲AV无码专区首页| 亚洲天天精品| 高清不卡国产| 国产亚洲日本精品在线| se..亚洲欧美| 久日91在线| 激情五月婷| 天天色黄色影院天天操| 国产丝袜啪啪| 伊人精品国产| 老熟女区| 69人妻精品一区二区绯色| 亚洲精品自拍| 台湾佬大香蕉| 大乔未久88一区| 99亚洲精品| 天天干干天天干干| 试看60秒 爽| 少妇人妻激情四射| 亚洲美女精品| 99性爱| 日本色色色色色视频| 加勒比综合网| 欧美后入式| 午夜欧美神马久久久久| 99久久综合| 亚洲成人av电影在线| 亚洲高清色综合| 中文字幕人乱码中文字的预防方法 | 国产视频一区二区三区久久亚洲天堂| 九九综合久久| 亚洲无码?第一页| 午夜男女爽爽大片免费观看| 青青草色AV| 欧美aⅴ99久久黑人专区| 日韩精品一二三四| 成人在线视频网| 天天做日日做| 中文字幕日韩专区精品系列| 久久久96| 欧美亚洲手机在线| 欧美丰满少妇交换91欧美精品| 色五月69夫妻| 中文乱码99| 超碰超碰欧美| 久久婷婷国产一区二区色| 性色av婷婷久久一区二区点复制| 日本熟妇人妻中出视频| 久久激情亚洲精品无码?V| 久久亚州精品成人Av无| 高清国产无码av| 囯产精品久久久久久久久久二区三区| 精品午夜福利| 久久久久九九九| 亚洲人久久久久日| 亚洲欧美日韩激情不卡| 日韩9区| 97久久久久| 亚洲第一页综合在线| 亚洲。天堂。日本在线观看| 亚洲国产亚洲天堂| 日本三级韩国三级美三级91| 99最新日韩偷拍视频| 国产九九九九九九| yazhouzaixian| 韩日欧亚a级| 欧在线一二区| 岛国激情视频在线观看| 婷婷丁香五月天综合东京热| 国产精品无码AV网站| 免费综合亚洲中文| www.色五月| 久久熟女人| 黄总AV色图| 熟妇人妻一区二区三在线| 品亲网欧美品亲网| 我爱操| 亚洲不雅视频1区二区| 亚洲图片欧美色图| 啪啪啪东京| 亚欧成人中文字幕一区| 久热大香蕉| 欧美综合97www| 九九九久久久久| 俺也射| 久久国产精品一区二区| 亚欧高清| 免费操逼视频下载| 蜜臀久久99精品久久久老,,| 99啪啪| 男人天堂无码| a片 xxxx受爽视频| 无码天天操| 综合婷婷| 欧美少妇色综合| 大鸡巴久久| 免费福利视频中文字幕| 丁香五月激情综合国产| 97爱爱影院| 青青草在线视频播放器| 色欲av一区二区三区蜜芽| www.国产高潮精品| 91精品成人| 青女偷拍网| 少妇一区二区三区高速| 超碰79人人乐| 日本亚欧爱爱| 国产精品久久久久亚洲av| 丁香五月影院| 欧美在线干| 国产午夜精品在线观看| 国产精品探花在线| 日韩av色图综合| 欧美少妇高潮| 国产成人bd在线观看| 久久这里精品国产99丫e6| 视频在线观看青青99国产| 熟女激情综合网| 另类小说五月天| 天天舔天天日天天射| 97色碰| 丁香色五月 97干| 日日干男人的天堂| 国内精品嫩模A∨私拍小视频| 人人爱操| 成人开心网在线视频| 国产一级内射无挡观看| 久草资源在线视频官方总站日韩丝袜美腿| 欧美综合天堂| 国产成人网站在线观看| 久久久噜噜噜久久人妻| 91成人高清在线观看| 9/A片| 一区二区视频在看| 五月婷婷丁香| 啊啊啊无码| 久热这里| 日本媚薬中文字幕在线| 色色激情| 欧美亚洲丝袜人妻制服中文99| 强奸乱伦av电影| 内射黑丝袜| 日韩成人精品视频自拍| 韩国毛片一区二区三区| 乱伦av国产| 粉嫩av平台| 大香蕉亚洲中文| 丝袜足交视频| 亚洲天堂色图| 久久久久久久久久久免费精品| 国产精品九9| 国产 日韩 欧美一区| 日本美女性生活久久久久久久| 91网站18禁| 国产丝袜美女诱惑| 日韩免费福利在线观看| 久9久9精品| 欧美日韩操逼动图| 玖玖无码超碰| 中文字暮97| 26uuu成人影片| 国产妇女精品视频青青草| 黄色区免费观看中文字幕| 亚洲综合一| 婷婷久久网| 91综合网站| 熟女欧美日韩综合婷婷| 肉嘟嘟www视频在线观看高清| 亚洲天堂一二| 99热精品青草在线 | 日本在线一二| 精品日韩人妻视频| 狠狠躁天天躁日日躁97| 五月婷婷六月激情| av72网| 99久久久无码国产精品性男| 91日韩国产欧美亚洲另类精盘州至城都| 中文字暮97| 国产成人精品必看| 欧美人妻一区二区| 欧美久久毛片基地| 一区二区三区激情在线观看| 强奸抽插av| 丰满人妻一区| 大香伊人在线一区| 免费看日本操逼视频| 国产精品女aA片爽爽视频| 欧洲自拍色图gif在线| 91chinese在线| 26uuu成人影片| 疯操AV| 久久综合久久综合人久久夜精品| 人人干人人操人人..com| 天久久久噜噜噜久久国产精品爽爽| 久久嫩草国产成人一区| 欧美精品日韩一区二区| 国产日韩欧美中文在线播放| 熟女人妻一区二区三区免费看| 大香蕉一人在线| 亚洲无套久久嗯嗯| 人人操人人操草草| 国产精品原创巨作?v网站| 欧美在线亚洲| 九九九九免费视频| 97视频620| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 97超碰欧美| 91狠狠狠| 97国产精品久久久久 | 亚洲丝袜诱惑| 亚洲天堂另类| 乱色老一区二区三区的观看方式| 日本999精品视频| 色老汉玖玖爱| 五月香婷婷| 乱色视频中文字幕| 青娱乐久久艹| 欧美人妻精品一区二区| 26uuu性| 五月天我淫我色av| 狠狠操,使劲操| 我要色综合网| 亚洲欧洲激情卡通另类文学四射小说网站 | 搡老女人老91二区| 日韩小电影| 日本不卡一二区| 999国产精品999久久久久久| 国内外毛片在线观看| 天堂涩涩| 老司机午夜精品福利视频一区二区| 超碰97玖玖爱| 日本东京热大香蕉a片| 伊人久久大香线综合无码| 亚洲美欧999| 伊人色综合超碰| 欧美中文字幕男人天堂久久精品 | 十八禁网站在线| 91蜜臀熟女| 欧美黄页在线| 偷拍亚洲高清图片| 欧美少妇高潮久久91| 后入式在线免费观看60秒| 四虎国产成人精品免费一女五男| 操人妻逼91| 久草在| 久久久久久少妇| 玖玖爱伊人玖玖爱| 97免费视频在线| 色色毛片| 丁香六月激情| 国产精品久久久三级无码| 午夜丁香| 超碰性爱97| 韩日精品福利视频一区不卡在线免 | 熟女熟妇伦久久影院毛片一区二区| 岛国不卡超碰护士AV在线播放| 999熟女精品| 综合欧美色图| 欧美Aⅴ| 嗯,啊。舔我逼| 久污| 94色色电影网| 人妻干天天| 国产吞精a级片激情电影| 久久久久久国产精品| 亚洲色图20p| AV色图| 日本男人天堂| 欧美精品日韩久久久九| 色999;丁香五月| 岛国AV一区二区电影| 97超碰总站| 亚洲熟女av中文字幕| 成人无遮挡毛片免费看| 免费一级欧美片片线观看| 超AV色女| 超碰社区97| 久久国产在线一区二区| 色婷婷九月天天综合| 99青草| 东北操逼| 人人干黄色| 久久精彩免费视频| 久久精品国产久精国产| 久久久97| 五月婷婷久久综合| 婷婷情色五月天| 欧美亚洲首页| 一区二区三区激情在线观看| 97露脸精品丝袜| 97在线免费看视频| 久久性爱大全| 天天内射| 嫩草美女久久| 亚洲情色五月天| 揉揉揉夜夜| 亚州日韩97| 91熟女在线| 色青青久久影视| 日韩天天本| 中国操逼无码| 欧美AB在线观看| 国产91美女视频| 久久国内| 久久精品电影| 日本熟女中文字幕一区| 狠狠躁天天躁日日躁| 中文操逼字幕| 国产精品天美传媒| 亚洲精品九九九| 丁香激情网| 东北女人高潮视频| 99综合| 欧美综合网站999| 免费在线观看国内色片网站网址| 国产三级中文有码在线视频| 国产一级片| 柠檬AV导航| 色777999综合| 国产一区二区欧美日本| 久久精品国产精品| 国产精品久久久久亚洲av| 怡春苑东京热| 久操凹凸视频| 久久妇| 久草免费在线一区二区| 久久9999| 99综合免费视频| av橘色网站| 九九无码| 亚洲成a人v欧美综合天堂下载| Julia在线播放亚洲久久| 亚洲丝袜综合| 影音综合网| 影音先锋日本一区二区| 精品美女少妇一区二区三区| 久久成人国产| 亚洲 欧美 日韩另类 麻豆| 综合色播| 新亚洲无码| 亚洲色图国产另类| 91快色色色色色| 天天操福利视频综合网站| 亚洲激情在线| aa片毛片| 日韩资源网| 欧美中出1| 久草加勒比一区在线| 国产精品网站www| 国产极品美女高潮无套在线观看| 五月天AV资源| 夜夜操天| 顶级丝袜熟女一区二区三区| 91天美免费| 91亚洲不卡一区| 综合欧美激情网| 91精品久久久久| 亚州综合电影| 性色av蜜臀av色欲aV| 欧美性高潮在线| 色婷婷综合久久久久中文一区二区| 夜夜爽77777| 人妻少妇精品无码专区二区密桃| 久久天堂| 国外91| 99欧美| 粉嫩av久久一区二区三区| 精人妻无码一区二区三区伊人直播| www久久99| 国产精品视频自拍在线| 欧美激情内射| 超碰98综合网| 日韩在线视频1234| 殴美大黄片| 免费a v| 疯操AV| 伊人久久大香蕉线AV五月天| 99在线观看| 日韩亚洲精品一区二区| 9久精品| 97 国产精品| 99 国产丝袜在线| 小草三级久久观看| 97人人超| 人妻日日干| 天天视频网站黄| 青草成人免费视频一COm| 亚州九九九精品视频| 日韩AV色图| 成人资源中文字幕在线观看天天| 大香网站| 男人的天堂午夜av| 蜜臀无码视频在线观看| 91亚洲图片| 欧美日韩国产色五月综合在线| 狠插 制服 自拍| 天天影视网综合少妇| 秋霞视频一区二区| 色情乱伦AV| 色黄色美女大长腿午夜视频| 麻豆国产精品午夜视频| 好吊色综合| 亚洲小说视频| 青青草一区二区高清无码视频 | 97久久超碰亚洲| 亚洲精品 欧美精品| 亚洲射综合网| 九一综合精品视品av| 天天综合日韩网| 中文字幕高清20页视频 | 国产精品久久久久久久久久久久久久吹| 精品一区二区三区蜜桃臀www| 色婷婷婷五月天激情四射| 欧美亚综合色图| 亚洲高清欧美总合| 精品国产乱码久久久久久久久久毛片| 黑人干亚洲| 69丨亚洲丨精品丨入口免费播放| av东京热男人的天堂| 国产熟女二区| 毛片麻豆91糖心精品毛情片| 伊人久久亚洲色欲综合网站 | 丁香激情五月天| 97操碰| 日韩精品国产精品五码一区二区| 丁香五月激情综合| 91亚州日韩高清| 中文字幕一区 二 区 三 四 五 区日 日 骚 | 91成人无码| 精品人妻中文字幕高清| 激情天天视频| 国产精品欧美日韩久久| 日本精品成人无码| 综合色图亚洲欧美| 99自拍B亚洲| 97欧美色资源| 久久精品综合| 综合久久9| 亚洲无无码αⅴ每日更新| 95自拍视频在线观看| 大伊香蕉在线视频免费| 婷婷丁香六月天| 久久久久久久久久久久久久久乱码| 中文字幕乱碼在线| 欧亚揄拍偷拍精品视频| 玖玖久久久| 美日韩男女操屄视频| 日本视频在线观看污污污| 婷婷色导航| 日少妇亚洲版| 人妻夜爽夜夜爽| 精品人妻中文字幕高清| 国产Aα| 99re在线观看| 啊啊啊啊二区好大| 啊啊啊好大好深| 人人干黄色| 久久性爱免费送| 九九久久久九九| 欧美亚洲日本视频久久久 | 精品97久久| 天天操人人操狠狠插| 久久久18| 青木玲在线不卡| 色综合加勒比| 欧美麻豆成人同性GⅤ在线| 99热超碰| www男人天堂| 免费一级精品啪啪视频| 亚洲色五月| 高清肉丝中文无码| 一区二区三区国产在线播放| 99久久e免费热视| 青苹果影院男人的天堂| 亚洲丝袜二区在线| 无码国产Av| 欧美专区第一页| 老鸭窝在线视频播放| 成人无遮挡毛片免费看| 97天天爽| 亚洲美女高潮喷水视频| 少妇无码av专区线| 久久久久久性爱片| 欧洲精品二区| 亚洲欧美国产成人综合不卡| 超碰97色色| 蜜桃av色偷偷av老熟女| 亚洲操操| 五月天九九日国产精品一区二区三区| 国产在线观看91精品一区| 天无日色综合| 色97干| 国产亚洲禁久一区二区| 中文字幕久久亚州无码| 中文字幕人成乱码熟女香港| 亚洲男人的天堂一区二区| 欧美日韩久久精品爱爱| 麻豆国产96在线| 成年人免费观看网站| 国产欧美精选自拍一区| 亚洲蜜臀懂色| 亚洲伊人久久综合97| 欧美精品另类人妖xxxx| 欧美加勒比| 天天综合在线4| 亚洲在线91| 91蜜臀熟女| 四虎免费在线观看| 日韩亚洲美州欧洲综三区一品在线| 国产精品乱码久久久久久久久| 熟妇操花| 久久精品国产97欧美精品亚洲| 色欲蜜臀AV| 国产精品一区二区后入| 伊人影院综合是一个与深夜成人在线| 无码视频一区二区| 天天综合网AV91| 亚洲图片日本AⅤ欧美在线| 中文字幕55555| 国产成人 综合亚洲 天堂| 超碰97男人| 国产欧美精选激情视频| 中文字幕人乱码中文字的预防方法 | 天天影视综合色| 久热大香蕉| 女性91网站| 久久这里精品国产99丫e6| 日韩成人性日韩成人性爱视频在线免费观看| 口爆综合网| 91福利网在线观看| 久干网| 国产精品久久久久久片| 色九九久九九| 久久精品视-一级做a爰片性色毛片16美国-中国女与老外在线精品 | 欧美成人一级免费电影| 97国产精选| 999久久久精品国产| 亚洲麻豆av一区二区| 91天天综合网,天天综合网| av一区二区三区四区| 欧美91久久久久| 屌逼麻豆| 久久性生大片免费观看性| 天天天天天超碰| 五月天激情四射| 囯产精品久久久久久久久久梁医生 | 日韩成人大片一区二区| 天天久久| 97日视频| 婷婷在线精品| 国产无马在线| 国产夫妻性生活视频| 亚洲人成色9999精品久久| 啪啪视频亚洲第一| 九九热av| 中文字幕女同在线| 日韩久久三区| 日本日逼高清| 色欧洲| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 97超碰美女| 亚洲欧洲无码一区夜| 91九色网| 免费αⅴ在线观看| 欧美加勒比| 国产中文日韩欧美一区二区三区人妻丝袜美腿 | 曰韩av中文字幕专区| 一中国女人毛片水真多| 久久久草草精品| 色第一页| 水澄无码AV| 欧美日韩性爱无码| 国产在线综合网| 国内一级精品| 天天干夜夜肏| 大香蕉欧美伊| 五月天我淫我色av| 有码人妻系列| 天天射影院| 玖玖玖玖精品国产剧情| 欧美成熟性爱精品| 97国产超碰| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 夜夜躁狠狠躁日日躁av| 91老熟女91老女人| 好舒服视频| 中美日韩毛片| 亚洲无套久久嗯嗯| 婷婷大香蕉| 日韩成人大片在线观看| 欧美,日韩综合久久| av一区二区三区不卡| 久久色精品视频在线| 美女91网| 久久精品成人| 国产黑白丝在线| 香蕉av一区二区三区| 9 7超碰在线免费观看| 国产少妇与亚洲av| 大香蕉宗合网在线| www.狠狠| 五月天丁香网| 亚洲日本韩国在线| 天天躁日日躁AAAXX| 青青操轻轻| 去干网最新版| 亚洲综合激情五月久久| www激情| 色人久久| 欧苏综合色综合| 猛交交| 九九热免费国产视频婷婷伊人| 一二三区在线| 午夜精品一区二区三区三上悠亚| 五月花婷婷| 性爱动态120秒| 中文字幕一区 二区三四五 区日 日骚| 亚洲欧美国产日本一区二区三区| 亚洲色图欧美视频| 日本中文字幕在线电影| av中文在线| 亚码激情| 久久九九一区二区三区成人| 爽爽爽免费视频| 操死我了嗯嗯嗯| 在线小视频| 成人草草视频| 久九色| 国产在线综合福利网站| 乱伦熟妇一区二区| 草草网站影院白丝内射| 日本在线视频导航| 国产刺激视频| 天天摸天天碰天天添青青| 国产噜噜噜噜噜久久久久久久久| 无码操逼天堂| 清纯唯美第一页| 在线日韩日本亚洲国产| 午夜乱轮操逼视频免费看| 99久久精品无码一区二区| 色墦五月丁香| 中文字幕视频2区| 91色堂| 日韩人妻无码不卡网站| 久久亚洲国产成人| 1禁看欧美黄片免费看| 色婷婷av在线观看| 大香蕉伊人一区在线观看| 日韩精品9区| 9丨久久九九九| 97在线精品观看视频| 国产小u女在线观看| 国产精品情侣啪啪| 中文一区二区| 国产在线播放成人免费| 18禁中文字幕| 熟女丰满人妻一区| 东京热99999| 热99这里有精品综合久久 | 日韩一级二级三级免费看完整版国语版| 久久机热| 人妻9117c| 五月婷婷激情网| 美女大乳久久久久久久女人18| 亚洲欧美变态| 蜜乳视频网站| 久久久久久久人妻| 久久超碰98| 天天射夜夜骑| 国产大学生口爆吞精合集| A V少妇特黄三级| 激情婷婷丁香| 香蕉黄色一级视频| 亚洲国男人的天堂| 91青青在线视频| 人人操人人摸avav| 很很干很很操| 国产丝袜高跟美女av免费观看| 国产精品久久久 | 高清无码在线播放网站| 日韩精品区二区三区不卡| 天天综合麻豆视频| 国产 日韩,欧美 自拍| 婷婷五月综合在线| 亚洲日韩XXX| 精品美女久久久久| 人妻天天夜夜爽一区二区| 亚洲97网站| 可以在线观看的黄色网址| 无码heyzo高清一区| 9 1果冻精品视频| 一级黄色牲爱A级片| 神马久久网| 国产精品爆乳懂色蜜乳| 夜夜嗨一区二区| 亚洲交性| 六月婷婷色综合| 99热这里只有精品1| www.91理论| 日韩美女,国产传媒,视频一区| 四虎国产精品永久在线囯在线 | 欧美少妇高潮视频| 欧美成人黄网色网站| 天天躁狠狠躁av| 思思热免费在线视频| 久久久性爱视频| 亚洲乱色熟女一区| 人妻精品一区二区全免费| 国产h小视频在线观看免费| 欧美亚性天堂| 性天堂| 丝袜熟女2P| 91免费看一区二区三区| 啊啊啊啊啊啊在线看| 亚洲欧美综合| 色综合中文字幕不卡| 中文字幕精品探花视频| 91 丝袜在线| 亚洲日本激情| 96国产污污污丝袜| 国产精品成人无码av无码免费| 超碰久久综合| 亚洲第一在线视频| 国产一区二区在线看| 狠狠爱综合网| 欧美中出| 久久精品72| 欧美综合娱乐久久| 无卡一区=区| 超碰在线99| 少妇久久久久久| 久久97资源 网| 口爆吞精在线观看| 亚洲春色欧美| 天天肏美女| 亚洲无码国产精品久久| 亚洲麻豆18发?| 激情综合五| 2021国产成人精品久久| 超碰99热中文字幕| 无码高清专| 中文字幕视频在线观看| 色婷婷在线视频精品导航| 伊人丁香五月婷婷| 国内一区二区三区| 东京太热久久久| 国产亚洲精品美女久久久久久2021| 日本高清一本二本免费不卡| 日本 欧美 亚中文字幕| 色综合V| 超碰欧美97资源| 偷拍网站久久男女男| 日韩操逼HD| 亚洲无码一区成人免费午夜| 香一区二区三区| 丝袜美腿制服人妻二区中文字幕| 男人天堂2019| 亚洲区限制级| 五月婷婷色色| 欧美极品美女aaaaaa级黄片| 超碰伊人在线| 操穴国产| www.色婷婷色综合| 蜜乳中文字幕a在线| 粉嫩久久久极品| 91色黑人少妇| av九九| 95自拍视频在线观看| 亚洲Av诱惑| 色娱乐色呦呦夜夜夜夜av| 五月丁香影院| 强奸乱伦麻豆| 亚洲日韩人妻中文字幕一区| 日韩丨制服丨中文|在线| 国产欧美日韩女同性恋ww喷水精品 | 黄色片一区二区三区四区五区| 91欧| 98超碰日本| 91最新综合| 91 刺激在线| 免费黄色A片| 久久黄色视频一区二区三区 | 色综合天天| 亚洲 国产 精品一区| 免费A片三p视频| 亚洲欧洲综合| 色悠久久久av| 超碰人妻中文在线| 性感女人网页在线观看视频| 六十路日本| 91动漫操逼视频| 国产特级毛片AAAAAA高潮流水 | 啪啪91| 深爱五月婷婷| 超碰人人超在线观看| 国产理论视频在线播放| 影音先锋日本乱伦| 日本不卡五区| 诱惑网综合| 欧美se综合| 九九热精品视频六| 色天使AV天堂| 亚洲AV在线资源| 亚洲宗合网| 无码男人天堂| 日韩资源网| 99re99视频在线免费观看| 欧美72网页| 欧美日本天堂| 日本男人插女人的逼黄色| 91久久久视| 极品粉嫩少妇视频| 欧美白嫩在线放| 国产精品。| 九区国产| 99re6国产精品99re| 亚洲综合九| 日本黄页视频在线观看| 亚洲一区制服诱惑| 蜜桃狠狠色伊人亚洲综合| 久夜视频| 97一区二压| 伊人久久亚洲中文字幕不卡| 国产午夜视频| 少妇人妻激情四射| 9997se| 亚洲97网站| 另类图片五月天| 九九九九九九九九九国产精品 | 欧美gv在线观看| 亚洲欧美色图小说| 人人妻人人爽 97人人看碰人免费公开视频|