免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

搜狐暢游秋招C++筆試復(fù)盤:快速冪、單調(diào)棧與八股考點(diǎn)全解析

搜狐暢游秋招C++筆試復(fù)盤:快速冪、單調(diào)棧與八股考點(diǎn)全解析 2023年搜狐暢游秋招C開發(fā)崗筆試我是在??途W(wǎng)線上參加的全程2小時(shí)攝像頭監(jiān)控屬于游戲公司里比較典型的一類技術(shù)筆試。和其他互聯(lián)網(wǎng)大廠相比暢游這套題更偏愛C語言本身、內(nèi)存管理、多線程這些底層知識(shí)而不是堆砌難到離譜的算法題這也和游戲開發(fā)崗的實(shí)際工作內(nèi)容對(duì)得上。無論你是準(zhǔn)備客戶端、引擎還是服務(wù)端方向這套筆試題基本能把C基本功篩一遍考完之后你對(duì)“八股”的理解會(huì)有一個(gè)新的認(rèn)識(shí)。我投的是C開發(fā)崗服務(wù)端方向筆試當(dāng)天打開試卷第一反應(yīng)是選擇題比例不低編程題有兩道還有一道場(chǎng)景設(shè)計(jì)題。整體難度中等偏上比純互聯(lián)網(wǎng)公司那種“上來就是hard級(jí)算法”要友好一些但對(duì)C內(nèi)存模型和多線程的考察深度明顯更高。這篇文章我只聊干貨把題型分布、高頻考點(diǎn)、編程題解法、八股準(zhǔn)備方式、考場(chǎng)避坑策略一條條拆開講給后面準(zhǔn)備秋招的同學(xué)做個(gè)參考。1. 這次筆試的整體結(jié)構(gòu)與題目類型1.1 試卷構(gòu)成與我的時(shí)間分配先說結(jié)論這套筆試試卷大概由三部分組成。第一部分是選擇題共20道左右單選和多選混在一起。內(nèi)容大概是C語法與語言特性占一半操作系統(tǒng)和網(wǎng)絡(luò)基礎(chǔ)占三成剩下兩成是數(shù)據(jù)結(jié)構(gòu)、算法復(fù)雜度和編譯鏈接相關(guān)。第二部分是兩道編程題一道偏基礎(chǔ)更像保底題一道偏數(shù)據(jù)結(jié)構(gòu)/算法需要在在線OJ上提交代碼支持C11/C17。第三部分是一道問答題給你一段游戲服務(wù)器中常見場(chǎng)景的描述讓你設(shè)計(jì)一個(gè)數(shù)據(jù)結(jié)構(gòu)或方案考察你對(duì)多線程、同步、內(nèi)存方面的理解。我當(dāng)時(shí)的時(shí)間分配是選擇題35分鐘編程題70分鐘問答題15分鐘?;仡^復(fù)盤這個(gè)分配不算最優(yōu)。選擇題里有幾道多選比較耗費(fèi)時(shí)間比如“下列哪些操作會(huì)導(dǎo)致迭代器失效”這種選項(xiàng)一多就容易糾結(jié)。我建議選擇題控制在30分鐘內(nèi)遇到拿不準(zhǔn)的直接標(biāo)記千萬不要在一道題上磨超過3分鐘不然后面編程題壓力會(huì)很大。兩道編程題加起來至少留70到80分鐘問答題最后10分鐘寫個(gè)核心方案就行不需要寫論文。1.2 相比往年2023年筆試的三個(gè)變化我在筆試之前刷過前幾年暢游的筆試題也問過在那個(gè)項(xiàng)目組的前輩。和2021年、2022年相比2023年這套題有三個(gè)很明顯的調(diào)整。第一個(gè)變化是新特性考察明顯加重。C11的移動(dòng)語義、智能指針、右值引用幾乎是必考C14、C17的題也會(huì)出現(xiàn)比如constexpr的演進(jìn)、if constexpr、結(jié)構(gòu)化綁定這些。以前可能考“以下哪個(gè)是C11引入的”現(xiàn)在會(huì)直接給一段代碼讓你判斷編譯結(jié)果或者問某段代碼是否存在未定義行為。這意味著你光背結(jié)論不夠得真正理解編譯器怎么處理這些特性。第二個(gè)變化是多線程題目比重上來了。不管是選擇題還是問答題都繞不開鎖、條件變量、原子操作。這個(gè)和游戲服務(wù)器端的場(chǎng)景高度相關(guān)因?yàn)闀秤蔚亩擞魏褪钟畏?wù)器基本都是多線程模型連接管理、玩家狀態(tài)同步、日志落盤都在多線程環(huán)境下跑。筆試?yán)锟级嗑€程不是為了勸退而是想篩掉那些只會(huì)寫單線程Demo、對(duì)并發(fā)毫無概念的候選人。第三個(gè)變化是“給代碼找問題”的題型變多。卷子里有幾道題是給你一段看起來沒什么問題的C代碼問實(shí)際運(yùn)行會(huì)出現(xiàn)什么結(jié)果或者指出哪一行有bug。這種題最考驗(yàn)經(jīng)驗(yàn)比如隱式類型轉(zhuǎn)換導(dǎo)致的精度丟失、臨時(shí)對(duì)象的生命周期、lambda捕獲方式引發(fā)的懸垂引用。沒有真實(shí)讀寫C的經(jīng)驗(yàn)光靠刷題很難答對(duì)。2. 選擇題里那些高頻考點(diǎn)逐題復(fù)盤2.1 C11/14/17 新特性constexpr、智能指針、右值引用先說constexpr。筆試?yán)镏苯訂枴癱onstexpr是哪個(gè)C版本引入的”答案是C11。但2023年這套題顯然不想就這么輕易放過你它還會(huì)往下追問C14對(duì)constexpr做了什么放寬答案是C14允許在constexpr函數(shù)內(nèi)部使用局部變量、循環(huán)和分支不再要求所有東西都是常量折疊。再往深一點(diǎn)C17引入了if constexpr可以在編譯期根據(jù)模板參數(shù)進(jìn)行分支裁剪。我復(fù)盤的時(shí)候發(fā)現(xiàn)這類題目不要死記版本號(hào)最好的記法是理解“編譯器在編譯時(shí)能做什么”。C11剛引入constexpr時(shí)限制很多本質(zhì)上是為了保證編譯器在編譯期求值不炸掉C14放寬是為了實(shí)用C17的if constexpr是為了模板編程更優(yōu)雅。理解了這條演進(jìn)線不管怎么出題都能應(yīng)對(duì)。智能指針也是重災(zāi)區(qū)。選擇題里考了shared_ptr的循環(huán)引用問題以及weak_ptr為什么能解決它。還考了unique_ptr能不能拷貝、可以怎么轉(zhuǎn)移std::move。這里有個(gè)很容易錯(cuò)的點(diǎn)shared_ptr不是線程安全的它只是“引用計(jì)數(shù)”這個(gè)操作是線程安全的但同一個(gè)shared_ptr對(duì)象被多個(gè)線程同時(shí)讀和寫仍然會(huì)有數(shù)據(jù)競(jìng)爭(zhēng)。筆試?yán)锶绻丫€程安全問得細(xì)一點(diǎn)很多人會(huì)掉坑。右值引用和移動(dòng)語義同樣繞不開。出一段代碼讓你判斷調(diào)用了拷貝構(gòu)造還是移動(dòng)構(gòu)造這種題幾乎年年有。關(guān)鍵點(diǎn)在于有名字的右值引用是左值所以std::move返回的是右值引用類型但移動(dòng)構(gòu)造函數(shù)內(nèi)部通常要把成員置空防止析構(gòu)時(shí)double free。這道題如果答錯(cuò)說明你對(duì)移動(dòng)語義里的“資源所有權(quán)轉(zhuǎn)移”理解還停留在背函數(shù)名階段。2.2 內(nèi)存布局與對(duì)象模型sizeof、虛函數(shù)表、指針C開發(fā)崗筆試不可能不考內(nèi)存。今年考了一道很典型的給定一個(gè)類成員變量有一個(gè)int、一個(gè)double、一個(gè)虛函數(shù)問sizeof(類)是多少。這里面的坑在于虛函數(shù)指針占8字節(jié)64位int占4字節(jié)double占8字節(jié)由于對(duì)齊規(guī)則實(shí)際結(jié)果不是48820而是要按最大對(duì)齊數(shù)對(duì)齊最終是24。這種題不畫內(nèi)存布局圖很容易錯(cuò)。還有一道題考了虛繼承的存儲(chǔ)布局。它給了一個(gè)菱形繼承的例子問最終派生類對(duì)象里有幾份基類子對(duì)象、虛基類指針怎么排布。說實(shí)話虛繼承在游戲開發(fā)里用得不算多但筆試就是喜歡考因?yàn)樗芎Y掉對(duì)對(duì)象模型理解不深的人。建議復(fù)習(xí)的時(shí)候至少把“無虛繼承的普通繼承布局”和“含虛函數(shù)的單繼承布局”畫一遍虛繼承理解一下原理就夠了。指針相關(guān)的題也不少比如“const int* p”和“int* const p”的區(qū)別“delete p之后要不要置空”、“為什么在析構(gòu)函數(shù)里delete this指針是不安全的”等等。這些基礎(chǔ)得不該錯(cuò)但每年都有人栽在“delete之后沒有置空導(dǎo)致double free”這種低級(jí)失誤上。筆試現(xiàn)場(chǎng)我有印象的是一道題void func(char* p) { delete[] p; }然后主函數(shù)里傳了一個(gè)棧上數(shù)組名進(jìn)去問運(yùn)行結(jié)果。答案是崩潰因?yàn)閐elete[]和new[]不匹配而且釋放棧內(nèi)存本來就是未定義行為。這種題就是考察你有沒有真正寫過會(huì)崩的代碼。2.3 多線程與同步鎖、條件變量、CAS 與 ABA 問題多線程這部分我覺得是暢游這套題和普通互聯(lián)網(wǎng)公司拉開差距的地方。選擇題里考了死鎖的四個(gè)必要條件互斥、持有并等待、不可剝奪、循環(huán)等待。這個(gè)其實(shí)不難難點(diǎn)在于給一段加鎖順序交錯(cuò)的多線程代碼判斷會(huì)不會(huì)死鎖、怎么解決。解法也很簡單讓所有線程按同一個(gè)順序加鎖或者用std::lock同時(shí)鎖多個(gè)互斥量。CAS與ABA問題也出現(xiàn)在了選擇題里因?yàn)闊嵩~里就有“aba問題c”。CAS是無鎖編程的基礎(chǔ)核心是compare-and-swap但CAS存在ABA問題線程1讀到一個(gè)值是A線程2把它改成B又改回A線程1再次CAS時(shí)發(fā)現(xiàn)還是A就認(rèn)為沒人動(dòng)過實(shí)際上中間已經(jīng)被改過。解決方式是加版本號(hào)。筆試?yán)镆苷f清楚這個(gè)問題是什么、為什么發(fā)生、怎么解決。條件變量也是高頻考點(diǎn)??剂艘坏李}用條件變量實(shí)現(xiàn)一個(gè)生產(chǎn)者消費(fèi)者隊(duì)列問wait為什么一定要配合while循環(huán)使用而不是if。原因是存在“虛假喚醒”spurious wakeup而且即使沒有虛假喚醒也可能被多個(gè)消費(fèi)者同時(shí)喚醒然后競(jìng)爭(zhēng)同一個(gè)任務(wù)所以必須在循環(huán)里重新檢查條件。這個(gè)考點(diǎn)對(duì)應(yīng)到游戲服務(wù)器就是任務(wù)隊(duì)列、網(wǎng)絡(luò)事件分發(fā)到處都在用。3. 編程題手記從讀題到AC的完整過程3.1 第一題快速冪加上大數(shù)取模這套筆試的第一道編程題比較友好考的就是快速冪。題目描述大概是給定三個(gè)整數(shù)a、b、p計(jì)算a的b次方除以p的余數(shù)其中a、b、p的范圍大概是10^9左右。如果直接用循環(huán)乘b次時(shí)間復(fù)雜度O(b)b到10^9時(shí)就完全不可行編譯環(huán)境會(huì)卡死時(shí)間限制也給得很緊我記得C/C是1000ms其他語言給了2000ms。所以必須用快速冪把冪運(yùn)算降到O(log b)。#include iostream using namespace std; long long quick_pow(long long a, long long b, long long p) { long long res 1 % p; a % p; while (b 0) { if (b 1) { res res * a % p; } a a * a % p; b 1; } return res; } int main() { long long a, b, p; cin a b p; cout quick_pow(a, b, p) endl; return 0; }這里有幾個(gè)細(xì)節(jié)值得說。第一res初始值應(yīng)該寫成1 % p因?yàn)槿绻鹥等于1任何數(shù)對(duì)1取模都是0如果直接初始化為1就會(huì)出錯(cuò)。第二a要先對(duì)p取模防止a本身很大、平方之后溢出long long。第三乘法也要先取模再取模不能等最后一次性取模因?yàn)橹虚g結(jié)果可能已經(jīng)超過long long的范圍。這道題其實(shí)是在送分如果連快速冪都寫不出來C崗基本就沒戲了。順帶說一句后來我了解到“n個(gè)整數(shù)的最小公倍數(shù)怎么求c”這個(gè)問題也是筆試/面試高頻很多人會(huì)去直接相乘再除gcd但數(shù)字一大就溢出。正確做法是先除以gcd再乘另一個(gè)數(shù)比如lcm(a,b)a/gcd(a,b)b而不是ab/gcd(a,b)。這兩道題背后的邏輯是一樣的你不僅要知道數(shù)學(xué)公式還要知道在計(jì)算機(jī)里怎么防止溢出。3.2 第二題單調(diào)棧解決“下一個(gè)更大元素”第二道編程題是數(shù)據(jù)結(jié)構(gòu)題考了單調(diào)棧題目是經(jīng)典變種給定一個(gè)整數(shù)數(shù)組對(duì)每個(gè)元素求右邊第一個(gè)比它大的元素的下標(biāo)如果不存在就是-1。這道題我在??蜕纤⒌竭^原題屬于必須要拿下的題型。暴力的做法是兩層循環(huán)O(n^2)n到10^5就直接超時(shí)。單調(diào)棧的思路是維護(hù)一個(gè)棧棧內(nèi)元素對(duì)應(yīng)的值保持遞減遍歷每個(gè)元素時(shí)把棧里所有比當(dāng)前元素小的彈出彈出時(shí)記錄當(dāng)前下標(biāo)就是它們右邊第一個(gè)更大元素的下標(biāo)。#include iostream #include vector #include stack using namespace std; vectorint nextGreaterElement(const vectorint nums) { int n nums.size(); vectorint res(n, -1); stackint st; for (int i 0; i n; i) { while (!st.empty() nums[st.top()] nums[i]) { res[st.top()] i; st.pop(); } st.push(i); } return res; } int main() { int n; cin n; vectorint nums(n); for (int i 0; i n; i) { cin nums[i]; } vectorint res nextGreaterElement(nums); for (int i 0; i n; i) { if (i) cout ; cout res[i]; } cout endl; return 0; }棧里面存的是下標(biāo)而不是值這個(gè)細(xì)節(jié)很關(guān)鍵因?yàn)轭}目要返回的是下標(biāo)。如果只存值輸出時(shí)就還得再查一遍原數(shù)組多一次O(n)的遍歷。單調(diào)棧的時(shí)間復(fù)雜度是O(n)因?yàn)槊總€(gè)元素最多入棧一次、出棧一次。這類題在游戲研發(fā)里其實(shí)有對(duì)應(yīng)的實(shí)際場(chǎng)景比如在一個(gè)戰(zhàn)斗系統(tǒng)里經(jīng)常要對(duì)場(chǎng)景里的單位做掃描找出某個(gè)單位附近的下一個(gè)目標(biāo)單位用單調(diào)??梢钥焖俣ㄎ缓蜻x對(duì)象。當(dāng)然真實(shí)項(xiàng)目不會(huì)直接用裸棧去套但數(shù)據(jù)結(jié)構(gòu)里那個(gè)“單調(diào)性”的思想是一脈相承的。3.3 字符串處理與輸入輸出的坑除了兩道編程題本身筆試?yán)镞€有一個(gè)隱形考點(diǎn)字符串和輸入輸出處理。2023年這套題的編程題雖然沒有直接出字符串處理題但熱詞里“c字符串?dāng)?shù)組初始化”、“c字符串轉(zhuǎn)數(shù)組”、“c讀入整行”、“c指定順序輸出”這些都是筆試常見底層操作。我在考場(chǎng)上遇到的一個(gè)實(shí)際問題是某些OJ題目要求讀入一整行字符串里面包含空格。很多人會(huì)順手用cin line結(jié)果讀到空格就停了導(dǎo)致后面所有數(shù)據(jù)全錯(cuò)。正確做法是#include iostream #include string using namespace std; int main() { string line; getline(cin, line); // 讀取一整行包含空格 return 0; }如果前面先用cin n讀了一個(gè)數(shù)字后面再用getline會(huì)發(fā)現(xiàn)getline讀到一個(gè)空行因?yàn)榫彌_區(qū)里還留著換行符。處理方法是在cin n之后調(diào)用cin.ignore()把換行符吃掉。這種細(xì)節(jié)不刷幾道ACM風(fēng)格的題目很難注意到。字符串切分也是高頻操作。筆試?yán)锝?jīng)常給你一串逗號(hào)分隔的字符串讓你轉(zhuǎn)成數(shù)組。最穩(wěn)妥的寫法是用getline結(jié)合stringstream#include iostream #include sstream #include vector #include string using namespace std; vectorstring split(const string s, char delim) { vectorstring result; stringstream ss(s); string item; while (getline(ss, item, delim)) { result.push_back(item); } return result; }這里注意getline的第三個(gè)參數(shù)是分隔符默認(rèn)是回車傳逗號(hào)就是按逗號(hào)切。這個(gè)方法比C語言里的strtok安全得多因?yàn)閟trtok會(huì)修改原字符串而且不是線程安全的在C里寫代碼盡量避開C風(fēng)格的字符串函數(shù)。還有一個(gè)考場(chǎng)上特別值得注意的點(diǎn)輸入輸出效率。n達(dá)到10^5甚至10^6時(shí)默認(rèn)的cin/cout因?yàn)橐虲標(biāo)準(zhǔn)IO同步速度會(huì)很慢容易造成超時(shí)。我在第一道快速冪題里其實(shí)n不大但為了保險(xiǎn)還是加了一句ios::sync_with_stdio(false); cin.tie(nullptr);這個(gè)寫法能明顯加快cin/cout速度。如果你習(xí)慣用scanf/printf那就不需要加。其實(shí)在線筆試用一個(gè)自己常用的風(fēng)格就行別在考場(chǎng)上臨時(shí)換。4. 如何高效備戰(zhàn)游戲公司C八股題4.1 八股不是背題是要能講出原理我見過很多同學(xué)備戰(zhàn)筆試就是背面經(jīng)把“虛函數(shù)表存放在哪里”、“new和malloc的區(qū)別”這些答案背到滾瓜爛熟。但2023年暢游這套題給我的感覺是光背結(jié)論沒用它會(huì)用一個(gè)具體的代碼場(chǎng)景讓你判斷本質(zhì)上是考你“為什么”。舉個(gè)例子八股里常背“new和malloc的區(qū)別”但如果筆試給你一段代碼問“malloc分配的內(nèi)存能通過delete釋放嗎”很多人會(huì)條件反射說不能因?yàn)閚ew/delete和malloc/free必須配對(duì)使用。但如果你進(jìn)一步去問“為什么不能”有一部分人就答不上來了。真正的原因是new不僅要分配內(nèi)存還會(huì)調(diào)用構(gòu)造函數(shù)delete不僅要釋放內(nèi)存還會(huì)調(diào)用析構(gòu)函數(shù)。如果拿malloc分配的對(duì)象直接用delete編譯器會(huì)嘗試去調(diào)用一個(gè)從來沒構(gòu)造過的對(duì)象的析構(gòu)函數(shù)行為未定義。這就是把結(jié)論用原理去解釋而不是死記硬背。我在準(zhǔn)備八股的時(shí)候有一個(gè)習(xí)慣每個(gè)考點(diǎn)都問自己三個(gè)問題——這是什么、為什么這樣設(shè)計(jì)、如果不這樣做會(huì)怎樣。比如智能指針不這樣設(shè)計(jì)裸指針會(huì)怎樣答案是忘記釋放導(dǎo)致內(nèi)存泄漏、異常安全無法保證那shared_ptr怎么解決通過引用計(jì)數(shù)weak_ptr又解決什么循環(huán)引用。這樣一層層往下問基本就能把一個(gè)問題徹底吃透。4.2 高頻八股速查表結(jié)合2023年筆試的考點(diǎn)和網(wǎng)上討論的熱詞我整理了一份C游戲崗筆試高頻八股速查表大家可以直接拿來對(duì)照復(fù)習(xí)??键c(diǎn)核心結(jié)論容易踩的坑虛函數(shù)與多態(tài)有虛函數(shù)的類含虛表指針虛表存放虛函數(shù)地址動(dòng)態(tài)綁定靠vptr構(gòu)造函數(shù)不能是虛函數(shù)析構(gòu)函數(shù)建議虛函數(shù)深拷貝與淺拷貝淺拷貝只拷貝指針深拷貝拷貝指向的內(nèi)容默認(rèn)拷貝構(gòu)造是淺拷貝兩個(gè)指針指向同一塊內(nèi)存會(huì)double free四種caststatic_cast編譯期轉(zhuǎn)換dynamic_cast運(yùn)行時(shí)RTTIconst_cast去constreinterpret_cast底層重解釋const_cast去掉const后修改值仍是未定義行為智能指針unique_ptr獨(dú)占所有權(quán)shared_ptr共享引用計(jì)數(shù)weak_ptr不增加引用計(jì)數(shù)shared_ptr不是線程安全的循環(huán)引用要用weak_ptr破移動(dòng)語義std::move把左值轉(zhuǎn)右值移動(dòng)構(gòu)造偷走資源移動(dòng)后原對(duì)象置空有名字的右值引用是左值不能直接用std::move(this)標(biāo)準(zhǔn)容器vector內(nèi)存連續(xù)list雙向鏈表map紅黑樹unordered_map哈希表容器使用期間對(duì)vector插入會(huì)導(dǎo)致迭代器失效編譯鏈接編譯四階段預(yù)處理、編譯、匯編、鏈接static庫鏈接順序會(huì)影響符號(hào)解析-l要放到目標(biāo)文件后面內(nèi)存對(duì)齊結(jié)構(gòu)體對(duì)齊到最大成員對(duì)齊數(shù)的整數(shù)倍不同成員順序會(huì)影響sizeof大小多線程mutex保證互斥condition_variable等待通知原子變量無鎖死鎖避免要統(tǒng)一加鎖順序這張表覆蓋了筆試選擇題里絕大多數(shù)核心點(diǎn)但每一條都值得展開成一篇筆記來寫。我的建議是每天挑其中3條自己給自己講一遍能不看資料講明白就算過講不明白就回去翻書。4.3 設(shè)計(jì)模式里必須會(huì)手寫的3個(gè)游戲公司C崗比互聯(lián)網(wǎng)公司更愛考設(shè)計(jì)模式因?yàn)橛螒蝽?xiàng)目里狀態(tài)機(jī)、單例、觀察者都是天天用的東西。我這次筆試的選擇題里就出現(xiàn)了單例模式和觀察者模式的概念辨析問答題也要求設(shè)計(jì)一個(gè)事件分發(fā)機(jī)制。第一個(gè)必會(huì)單例模式。懶漢和餓漢都要會(huì)寫而且要能寫出線程安全的版本。C11以后最簡單的線程安全寫法是Meyers Singletonclass Singleton { public: static Singleton getInstance() { static Singleton instance; return instance; } private: Singleton() {} Singleton(const Singleton) delete; Singleton operator(const Singleton) delete; };這個(gè)寫法利用C11規(guī)定“函數(shù)局部static變量的初始化是線程安全的”這一特性又簡單又安全。筆試現(xiàn)場(chǎng)手寫單例我建議默認(rèn)寫這個(gè)版本比雙檢鎖加鎖簡單還不容易出錯(cuò)。第二個(gè)必會(huì)工廠模式。游戲里創(chuàng)建角色、創(chuàng)建怪物、創(chuàng)建不同的子彈都離不開工廠。簡單工廠用if-else或switch創(chuàng)建具體產(chǎn)品工廠方法把創(chuàng)建邏輯下沉到子類抽象工廠處理一族產(chǎn)品。筆試不要求你寫特別復(fù)雜但至少簡單工廠要能一次寫對(duì)。第三個(gè)必會(huì)觀察者模式。游戲里的成就系統(tǒng)、任務(wù)系統(tǒng)、UI系統(tǒng)全都依賴事件和觀察者。核心設(shè)計(jì)是維護(hù)一個(gè)監(jiān)聽器列表事件發(fā)生時(shí)遍歷通知。手寫的時(shí)候要注意通知過程中如果某個(gè)監(jiān)聽器被銷毀了怎么避免懸垂指針這是最容易考的點(diǎn)。一般做法是使用weak_ptr來保存觀察者通知前先lock失敗了就從列表里移除。這3個(gè)模式是保底如果時(shí)間充裕建議再復(fù)習(xí)狀態(tài)模式和命令模式。狀態(tài)模式對(duì)應(yīng)游戲角色行為切換命令模式對(duì)應(yīng)技能釋放和撤銷都是游戲開發(fā)里高頻使用的模式。5. 筆試環(huán)境、調(diào)試技巧與時(shí)間不夠時(shí)怎么辦5.1 考試系統(tǒng)與編譯器的幾個(gè)細(xì)節(jié)筆試用的是??途W(wǎng)的系統(tǒng)本地沒有IDE只有網(wǎng)頁編輯器。雖然牛客支持C17但它用的編譯器大概率是GCC不是MSVC。這意味著如果你平時(shí)在Visual Studio里寫代碼有些寫法在牛客上可能編譯不過或者行為不同。最容易出問題的幾個(gè)地方第一GCC對(duì)頭文件的嚴(yán)格程度比MSVC低但在線OJ也不會(huì)幫你自動(dòng)包含代碼里必須把用到的頭文件都寫出來。第二GCC的int范圍是32位long在Linux 64位下是64位但在Windows下long是32位。所以如果你的代碼里用了long而且題目數(shù)據(jù)范圍超過2^31在線OJ上是沒問題的但你自己本地Windows調(diào)試時(shí)可能要改成long long。建議統(tǒng)一用int64_t或者long long跨平臺(tái)最穩(wěn)。還有一點(diǎn)網(wǎng)頁編輯器沒有斷點(diǎn)調(diào)試功能出bug只能靠cout打印或自己腦補(bǔ)。我這次筆試犯過一個(gè)低級(jí)錯(cuò)誤忘了加return 0本地VS會(huì)自動(dòng)補(bǔ)但在線判題某些環(huán)境下會(huì)警告甚至RE。所以交代碼之前自己快速掃一遍main函數(shù)一定要有返回值。5.2 本場(chǎng)考試最常見的代碼失誤考場(chǎng)上最容易出的問題不是思路而是低級(jí)失誤。我根據(jù)自己和周圍人的復(fù)盤整理出幾個(gè)高頻雷區(qū)。數(shù)組越界是第一大雷區(qū)。用vector的[]去訪問不存在的下標(biāo)本地運(yùn)行可能不報(bào)錯(cuò)但OJ會(huì)返回段錯(cuò)誤。尤其是單調(diào)棧這類題目要反復(fù)確認(rèn)棧頂下標(biāo)在沒彈出的情況下是否可能越界。我寫單調(diào)棧時(shí)習(xí)慣在每次st.top()之前都檢查!st.empty()寧可多寫一個(gè)條件也不賭自己沒看錯(cuò)??罩羔樅蛻掖怪羔樖堑诙罄讌^(qū)。比如對(duì)nullptr調(diào)用成員函數(shù)或者返回了局部變量的引用。C里最容易踩的是lambda捕獲方式按引用捕獲局部變量然后在另一個(gè)線程里執(zhí)行這個(gè)lambda結(jié)果局部變量已經(jīng)析構(gòu)了。這種問題筆試不一定能立刻看到但選擇題里很愛出判斷“這段代碼哪里有未定義行為”。遞歸棧溢出是第三大雷區(qū)。如果筆試題目允許用遞歸一定要先估算遞歸深度。深度超過10萬層時(shí)默認(rèn)棧大小一般8MB可能不夠用。我當(dāng)時(shí)的處理方式是優(yōu)先改寫成循環(huán)或者用顯式棧模擬遞歸。實(shí)在要遞歸就把遞歸函數(shù)里的局部變量盡量挪到堆上降低單層棧幀大小。5.3 卡題時(shí)的策略先暴力再優(yōu)化如果編程題卡住我的建議是先寫暴力解法拿到部分分再考慮優(yōu)化。很多在線OJ的判題規(guī)則是“通過部分測(cè)試用例就給部分分?jǐn)?shù)”空著肯定0分暴力至少能過掉小數(shù)據(jù)。以快速冪那道題為例如果一時(shí)間沒想起來怎么實(shí)現(xiàn)直接寫循環(huán)乘法可能只能過10%的測(cè)試點(diǎn)但有10分總比0分強(qiáng)。寫完暴力之后再想優(yōu)化思路會(huì)順暢很多因?yàn)楸┝Π姹疽呀?jīng)把輸入輸出和基本邏輯跑通了剩下只是把中間那段循環(huán)換成更高效的算法。還有一個(gè)策略實(shí)在做不出最優(yōu)解但知道有某種算法可以過不要糾結(jié)于“最優(yōu)最美”的寫法。筆試沒有重構(gòu)環(huán)節(jié)能AC的就是好代碼。我見過有人考場(chǎng)上反復(fù)改代碼想讓時(shí)間復(fù)雜度再降一個(gè)常數(shù)級(jí)別結(jié)果改出了bug得不償失。6. 針對(duì)性準(zhǔn)備建議搜狐暢游這類游戲公司到底在篩什么人6.1 客戶端/引擎方向重內(nèi)存和性能如果你是投客戶端或者引擎方向的C崗筆試之外更要注意那些和渲染、資源管理相關(guān)的知識(shí)點(diǎn)。雖然筆試選擇題里不會(huì)直接問你OpenGL或者Unity但面試官會(huì)通過筆試的C基礎(chǔ)題判斷你的底層功底尤其是內(nèi)存管理。客戶端場(chǎng)景下內(nèi)存是最稀缺的資源GC也不能亂用所以C的RAII、智能指針、移動(dòng)語義這些能力是實(shí)打?qū)嵰玫摹9P試?yán)镪P(guān)于棧和堆的題、對(duì)象生命周期題都直接映射到客戶端開發(fā)里的資源加載、場(chǎng)景切換、對(duì)象池管理。刷題之外建議自己寫一個(gè)小項(xiàng)目比如實(shí)現(xiàn)一個(gè)簡單的對(duì)象池體會(huì)一下“分配和釋放”在游戲引擎里是怎么被高度控制的。6.2 服務(wù)端方向重并發(fā)和網(wǎng)絡(luò)服務(wù)端筆試題的編程題會(huì)比客戶端更偏向網(wǎng)絡(luò)和高并發(fā)場(chǎng)景。2023年這套題雖然沒直接考socket編程但問答題和選擇題里已經(jīng)隱含了網(wǎng)絡(luò)編程的要求比如TCP和UDP的區(qū)別、阻塞和非阻塞IO、epoll和select的對(duì)比。服務(wù)端C崗的核心工作就是處理大量并發(fā)連接玩家的移動(dòng)、戰(zhàn)斗、聊天消息全部要通過服務(wù)器轉(zhuǎn)發(fā)。所以多線程和網(wǎng)絡(luò)是服務(wù)的生命線。準(zhǔn)備這個(gè)方向建議把網(wǎng)絡(luò)編程里經(jīng)典的Reactor模型、多線程事件循環(huán)、連接池這些都過一遍不用寫框架但至少要能用epoll寫一個(gè)簡單的echo服務(wù)器理解ET和LT兩種模式的區(qū)別。這個(gè)能力筆試不一定能直接考但后面面試大概率會(huì)問。6.3 筆試前的刷題與復(fù)習(xí)節(jié)奏最后說說我自己的復(fù)習(xí)節(jié)奏給大家一個(gè)參考。我把秋招筆試準(zhǔn)備分成了三個(gè)階段基礎(chǔ)期、刷題期、模擬期?;A(chǔ)期大概兩周核心是把C Primer里關(guān)于類、內(nèi)存、拷貝控制、移動(dòng)語義、智能指針這幾章重新讀了一遍同時(shí)把《Effective Modern C》里的條款挑著看重點(diǎn)理解現(xiàn)代C寫法和背后的原因。這個(gè)階段不急著刷題先建立對(duì)C語言本身的系統(tǒng)認(rèn)識(shí)。刷題期三到四周主要在??秃土凵习礃?biāo)簽刷題不按題號(hào)刷。高頻標(biāo)簽是數(shù)組、字符串、鏈表、棧、隊(duì)列、二叉樹、動(dòng)態(tài)規(guī)劃、貪心。每天固定兩道題一題偏簡單一題偏中等周末做一次套題模擬。這個(gè)階段還有一個(gè)任務(wù)就是把上面那張八股速查表里的知識(shí)點(diǎn)逐個(gè)寫成筆記每天輸出一篇。模擬期考前一周專門做往年的筆試真題嚴(yán)格按考試時(shí)間限時(shí)全程開攝像頭模擬。??蜕嫌胁簧儆螒蚬镜恼骖}暢游的題目也有人在討論區(qū)分享。模擬的時(shí)候重點(diǎn)關(guān)注時(shí)間分配、編程題輸入輸出格式、以及提交前的代碼檢查流程??紙?chǎng)上最大的恐懼不是題難而是“時(shí)間不夠、格式錯(cuò)了、編譯不過”這些操作層面的問題。最后說點(diǎn)實(shí)際體會(huì)這次筆試我最大的一個(gè)教訓(xùn)是選擇題別貪快也別戀戰(zhàn)。我前面有幾道多選糾結(jié)太久編程題第一道快速冪雖然AC了但第二道單調(diào)棧當(dāng)時(shí)只過了部分用例因?yàn)槲野严聵?biāo)和值混著存繞了一圈才改對(duì)??纪陱?fù)盤發(fā)現(xiàn)如果選擇題壓縮5分鐘第二道題完全有時(shí)間調(diào)通。所以做題節(jié)奏一定要穩(wěn)遇到不確定的選擇題先跳過最后再回來看往往能節(jié)省出編程題需要的黃金時(shí)間。還有就是C八股這件事不要當(dāng)成“面試要考所以背”而是當(dāng)成“我寫代碼本來就要懂這些”。這次筆試讓我更確定了一件事游戲公司的C崗考察的本質(zhì)不是你會(huì)不會(huì)背某個(gè)知識(shí)點(diǎn)而是你有沒有真正寫過、調(diào)過、崩潰過的C代碼。那些坑那些細(xì)節(jié)那些“為什么”都是在真實(shí)項(xiàng)目里踩出來的。希望這篇復(fù)盤能幫你少踩幾個(gè)坑。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
婷婷五月视频| 99视频内射三四| 影音先锋AV资源男人站| 欧美色99| 五月天婷婷黄色| 激情淫乱男女| 大香蕉久久综合网| 免费AV播放| 九九机热| 婷婷五月天色网久| 五月六月丁香激情视频| 五月婷婷深深爱| 99热这里是精品| 色婷婷五月天视频在线| 五月婷婷 欧美| 激情五月激情综合网| 思思热99在线视频| 婷婷美女精品视频| 五月五婷婷网| 26UUU欧美激情一区二区| 天天日天天色| 丁香激情五月天| 亚洲久热无码| 丁香五月婷婷成人色区| 久久九九99| 色色亚洲99com| 99热这里只有精品22| 涩涩五| 色五月噜噜| 久久最新色| 草婷婷在线| 综合99久久| 婷婷成人av| 成人电影一区| 五月天大香蕉| 丁香五月天堂网| 亚洲色情网站| site:feetmall.com| 99久久网站| 日韩视频女神99| 午夜不卡久久精品无码免费| 久热免费视频| 一二线视频 另类| 99久久婷婷| 黄色成人网站在线播放| 欧美97色| 久久综合五月| 狠狠综合网| 色婷婷亚洲| 五月丁香色| 五月丁香婷婷六月天| 97操视频| 中文精品久久久久人妻不| 射久久丁香五月| 天天色凹凸| http:色情日本com| 人妻精品一区二区三区| 激情第四色| 欧美日本黄色| 99久久婷婷| 国产精品电影| 粉嫩AV久久一区二区三区| 色欲一区二区三区精品A片| 狠狠色五月| 思思久ren热| 婷色人人狠| 99精品在线播放| 激情婷婷五月天日本系列| 五月天激情黄色网址| 欧美五月停| 超碰人妻公开在线| 欧美丁香五月| 婷婷偷拍网| 色婷婷婷av| 91丨九色丨国产打屁股| 6080av| 狠色狠色综合久久| 99亚洲视频| 五月天婷婷乱论小说| 天天婷婷色六月| www.色五月.com| 99久久6| 久热A| 99福利视频| 天天综合网亚洲网站| 亚洲天堂aaa| 欧美色性色好| 少妇人妻丰满做爰XXX| 97在线观视频免费观看| 亚洲成人中心| 五月天色婷婷小说| 五月天婷婷7米| 婷婷日欧美在线观看| 狠狠爱五月婷婷| 婷婷九月亚洲| 九色在线五月婷婷网址| 一区二区成人电影| 激情综合另类| 99热97| 99热这里只有精品中文字幕| 色丁香五月婷婷| 风流少妇A片一区二区蜜桃 | www狠狠com| 婷婷综合97| 狠狠人人| 成人婷婷| 久久机热探花| 婷婷9月天| 99精品在线观看视频| 海外网站专业操老外| 九色91美女| 伊人大香五月天| 天天天日天天天干| www.99视频| 欧美韩国日本| 久色激情| 涩涩涩.com| 久久亚洲无码| 97午夜一区二区| 激情爱爱网站| 激情婷婷丁香色五月| 激情五月天激情综合网| 色婷婷亚洲婷婷| 国产肥白大熟妇BBBB视频| 五月丁香综缴情性爱| 色天堂操| 丁香亭亭久久| 色五月天丁香婷婷| 182tv992tv人之初午夜免费观看| 天堂婷婷五月在线| 久9无码视频| 国产精品第一国产精品| 亚洲黄色影视| www.久久99热地址发布| 五月婷婷久久网| 色情五月综合婷婷| 99这里| 大香蕉综合网| 日本久久天堂| 色哟哟www| 色香蕉精品五夜婷| 婷婷五月天777| 99热资源在线| 久久青草国| 操国产人妻| 99色在线观看视频| 日本97久久久精品| 五月婷av| 99热黄| www色婷婷久久综合久色| 五月婷婷av| 99在线精品视频| 亚洲精品V天堂中文字幕| 婷婷五月精品中文字幕| 色婷婷视频在线| 丰满人妻一区二区三区| 丁香五月天在线视频| 中文在线成人| 久热丁香| 日本丁香五月| 婷婷五月色情| 青青草成人网| 一级二级色大片| 久久精品亚洲热| 四LLL少妇BBBB槡BBBB| 999婷婷综合| 欧美色婷婷| 97碰碰草| 亚洲色无码| 欧美搡BBBBB摔BBBBB| 亚洲成人网在线观看| 五月婷婷开心五月| 五月婷久久草| 九九热这里只有精品6| 五月天综合网| 人妻在线中文字幕久久| 久久人人做人人妻人人玩精品va| 色五月婷婷婷婷| 国产午夜精品一区二区三区嫩草| 久久五月天激情视频| 99操视频| 亚洲综合久| 五月婷婷啪啪啪啪| 亚洲成片在线观看| 99在线精品视频| 国产激情在线| 国产色色视频| 91dy.av| 超碰9799| 天天日夜夜拍| 亚洲网站999| 第四色五月婷婷| 婷婷丁香社区| 久久99热免费最新版| 丁香五月玖玖| 在线观看亚洲AV| 91青娱乐青青草| 天堂在线9| 丁香色成人| 日本91在线| 激情五婷网| 亚洲综合99| 五月丁香六月激情综合网| 激情五月丁香婷婷| 插插插色综合网| 高清资源站日A美A欧亚…| 五月天开心激情网色欲无码| 人碰人人人玩91| 成人视频婷婷| 另类图片天天影视在线观看| 精品夜夜澡人妻无码AV| 五月综合婷婷五月| 91肏| 日韩在线视频中文字幕| 夜夜www| 婷婷操无码| 亚洲综合五月天婷婷| 久久伦乱| 免费看欧美成人A片无码| 中文字幕丰满孑伦无码专区| 婷婷综合激情五月综合| 影音先锋偷偷色男人站| 丰满人妻一区二区三区| 婷婷天天色| 91碰| 综合六月久久| 九九久久网| 激情五月天啪啪| www.婷婷五月天.com| 天天舔天天插天天爱| 亚州美女| 婷婷激情五月| 亚洲色情激情丁香五月| 日韩黄色网络| 激情5月婷婷| 超碰在线综合| 天天成人综合视频| 综合天天综合| 91九色中文字幕女在线观看| 强辱丰满人妻HD中文字幕| 五月亭亭六月天| sesesesezonghe| 超碰99热精品在线| 色噜噜狠狠一区二区三区| 3p日韩网站视频| 狠狠色狠狠爱| 日木WWW视频| 欧美色宗和激情| 天天在线久久综合| 香蕉综合网| 日韩一级| 亚洲欧洲中文日韩久久AV乱码| 99热这| 只有精品视频在线观看| 国产av基地| 综合久久激情久久| 午夜丁香婷婷| 久久久com| 天天狠狠干| 五月丁香六月色婷婷综合五月天| 婷婷终合色图| 丁香婷婷老司机久操| 婷婷色五月天在线观看| 91狠狠色丁香| 五月婷婷香蕉| 禁欲电影完整版在线播放| 激情五月天婷婷五月天| 激情五月天色婷婷综合| 五月丁香激情婷婷综合字幕| 色婷婷综合视频| 色综啪啪| 国内熟女黄色系列| 婷婷香蕉精品| 国产AV影片| 99热久| 精品无码色| 97色婷婷在线观看| www.久9| 99热69| 最新丁香六月婷婷| 激情五月婷婷综合网| 久久久97| 五月天日日操夜夜操| 亚洲 视频 导航 一区| 久久婷婷桃花五月天| 人人爽天天爽| 丁香五月香蕉| 九九AV| 色七七九九| 婷婷五月天色综合| 日日日影院| 另类图片五月天婷婷| 丁香五月影视| 91viP在线看| 91九色小视频| 色色激情五月| 色综合久久99色| 欧美激情伊人| 国产综合婷婷| 草草视频91| www.久久久久久久| 99ri在线| 99久久久国产大片区| www婷婷| 强伦轩人妻一区二区电影| 国产又粗又大又爽又黄| 99精品成人无码A片观看金桔| 国产毛片精品一区二区色欲黄A片| 97碰免费视频在线| 天天色天天日| 不卡在线超碰| 九九久99免费视频| 九月婷婷综合网| 日本黄色在线观看| 久久色婷婷| 婷婷成人综合| 天天拍夜夜撸| 五月色俺婷婷| 色播播婷婷| 婷婷五月天狠狠色| 99综合| 深爱激情五月婷婷| 欧美精品XXXXBBBB| 97luluse| 色婷婷69| sS丁香五月婷婷| 同性gv国产精品一区二区| 97在线视频观看| 人人摸人人操人人爽| 91人人妻人人操| 精品99在线观看| 久热黄色| 美女激情婷婷| 无码99| 色综合丁香| 五月综合视频| 丁香五月玖玖| AV在线观看网站| 久久婷婷五月综合97色一本| 六月婷色六月| 91人人网| 国产精品第一国产精品| 青青日韩| site:minyis.com| 99精品7| 色欲一区二区三区精品A片| 综合视频久久| 思思热视频在线| 综合五月婷婷| 日韩欧美成人网| 丁香五月欧美色综合| 激情五月深爱五月| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | 丁香五月激情综合| 亚洲第一av| 1024日韩| www.99成人视频| 激情五月天综合网| 在线综合亚洲欧美65| 久草婷婷在线| 91精品久久久久久77777| 婷婷五月天无码熟女| 五月丁香六月婷婷综合网站| 91操碰| 另类图片五月天婷婷| 伊人五月婷婷| 日本社区五月天激情| 人妻综合网| 亚洲精品无AMM毛片| 色五月婷婷天堂| 99国产er热视频| 亚洲视频图片婷婷五月| 久久婷婷五月| 激情无码网| 开心婷婷五月天电影院| 婷婷五月香蕉| 久久九九婷婷| 五月天婷婷深深爱| 色玖玖| 天堂爱啪啪| 五月丁香婷中文字幕| 婷婷五月综合网| 日本44久久在线| 婷婷色中文字幕| 五月激情久久| 玖玖色综合| 大香久久伊人网| 99久在线观看| 五月天狠狠| 精品一二三区久久AAA片| 中文字幕综合| 婷婷九月丁香| 九九热99在线视频| 日本不卡五月婷婷丁香| 婷婷五月激情片| 丁香五月婷久久| 欧美在线干| 婷婷成人AV| 五月天色婷婷网| 亚洲精品V天堂中文字幕| 性生活视频98791| 色五月婷婷丁香五月| 丁香五月激情网| 久久香蕉丁香| 五月色综合| 国内精品免费一区二区2009| 久久这里只有国产精品视频| 中文字幕免费高清电视剧| 日本色色色| 亚洲五月天激情| 婷婷丁香大香蕉| 99色热视频| 超碰人人在线| 综合激情五月丁香9999久久精| 97碰碰视频在线观看| 91色碰| 99色热视频| 成人视频网| 天天操天天爱天天日| 91碰在线| 五月婷婷啪啪啪| 色五月五月天色婷婷色五月| 91大屁股精品| 婷婷久久丁香五月| 久9热| 99自拍视频在线| 九九热大香蕉| 五月天色色色| 五月丁香琪琪| 激情小说五月天| 99热9| 五月天六月丁香| 五月综合久久| 欧美熟女乱又伦| 国产熟妇的荡欲午夜视频| 99热国产在| 五月香婷婷| 五月天色婷婷av| 国产偷人爽久久久久久老妇APP| 亚洲五月婷婷在线| 99热国产在线| 噜噜噜久久| 干一干xxxx| 色色色五月天婷婷| 99视频这里只有精品10| 婷婷精品综合| 丁香五月婷婷啪啪| 久久综合激情五月天| 9久久精品| 六月伊人婷婷| 婷婷五月天av小说| 色婷另类| 天天弄天天爽| 超碰色碰碰| 天天日天天干天天爽| 国产婷婷五月| 婷婷久久五月天| 五月婷婷综合热| 熟女人妻一区二区三区免费看| 九九久久综合网站| 婷丁香五月天| 性做久久久久久久免费看| 天天草狠狠擦| 综合九九久久| 色婷婷五月天偷拍| 色婷婷激情五月天| 久热婷婷| 99在线视频观看| 天天日夜夜拍| 天天插天天狠| 婷婷六月香| 91丨九色丨熟女|老版| 丁香九月综合| www狠狠爱com| 综合久久99| 天天草天天日| 激情久久综合| 婷婷丁香久久网| 日韩综合天堂| 国内精品玖玖| 日本三级大片| 黄色毛片精品| 丁香婷婷激情六月五月开心| 亚洲色人妻| 国产67194| 丁香狠狠色婷婷久久无码视频| 亚洲另类毛片| 荡乳尤物3HP1V5| 俺去也五月天| 精品综合五月| 台湾无码A片一区二区| 欧美在线干| 伊人久久丁香婷婷六月五月综合| 色五月婷婷大香蕉| 伊人五月婷婷| 激情图片99| 99ree6| 婷婷伊人中文字幕| 婷婷五月天堂| 激情五月六月丁香| h亚洲| 超碰人妻在线| 五月天激情小说网| 色爱终和网| 久久婷婷五月天| 99丝袜精品视频网站| 久久婷五月婷| 婷婷在线激情| 日日夜夜爽爽| 色五月婷婷成人视频| 91精品人妻少妇无码影院| 风流少妇A片一区二区蜜桃| 激情久久五月天| 亚洲激情免费视频观看| www.主妇. com| 国产午夜精品一区二区| 性爱五月婷| 精品一二三区久久AAA片| 免费AV播放| 无码色色色| 色播五月婷婷综合| 丁香五月激情啪啪| 久久久99视频| 欧美超级视频97| 色欲一区二区三区精品A片| 五月丁香色色| 久久婷婷五月天激情四射| www一区二区三区| 六月综和久久| 久久五月六月| 草操AV在线| 婷婷五月av| 99资源在线视频| 亚州第一A片| 久久这里只有精品视频15| 思思99久久| av网站中文| 婷婷五月综合激情小说| 这里只有免费的精品| Xx色综合| 久久99热这里| 免费无码毛片一区二区A片| 大香蕉520| 国产成人在线精品| 九九激情综合| 狠狠干天天日| 婷婷在线视频| 狠狠操狠狠| 色欲av伊人久久大香线蕉影院| 久久综合五月| 爱婷婷都市激情| 久久开心五月天激情| 五月网网站| 国产色五月| 综合久久人妻| 九九热视频在线观看| 婷婷五月天电影网| 久久人人九九| www.五月天婷婷| 亚洲激情综合| www.久久久久| 99操免费视频| 亚洲婷婷免费| 97九色视频| 激情久久五月天| 九九热视频精品| 99九九热在线观看| 99精品在线观看| AA丁香综合激情| 欧美亚洲色色色色| 婷婷久久女人| 另类国产欧美视频| 激情丁香九九五月综合网| 婷婷99狠狠躁天天躁中| 黄色精品五月婷婷| www.yw尤物| 久热精品视频在线观| 亚洲色五月天是什么| 新五月天婷婷激情电影| 色五月中文网| 婷婷97碰碰| 日本色色色| 久久久天堂国产精品女人| 丁香五夜激情四射夜夜夜| 色色日本欧美| 婷婷激情丁香五月婷婷激情丁香五月婷婷 | 大香蕉婷婷丁香天堂AV| 99综合免费视频| 97五月婷| 91超碰在线观看| 综合色色网| 国产精品第一国产精品| 在线91日韩| 婷婷中文字幕网站| 九九综合五月欧美| 婷婷五月成人| 丁香婷婷色情社区成人小说| 91久久1118| 国产精品久久久久9999小说| 亚洲成人无码网站| 天天日日天天| 99热| 亚洲最大成人综合网720P| 97婷婷狠狠久久综合9色| 久热久色| 激情五月婷婷综合网| 精品人妻在线| 狠狠色综合网| 婷婷六月视频| 婷婷色五月色妇| 国产在线黄色| 草久私拍| 婷婷激情综合无月| 另类激情五月在线视频欧美| 国产成人精品一区二三区熟女在线| 丁香五月婷婷av影院| 97九色| 精品51XX| 婷婷五月影院| 涩综合网| 丁香婷婷久久老熟女综合网| 中文字幕在线观看视频www| 日本久久九| 丁香婷婷综合精品六月初| 五月丁香欧美综合免费视频| 婷婷五月天成人网| 婷婷丁香先锋资源网站| 丁香六月视频| 亚洲激情AV| 亚州第一A片| 国产欧美日韩一区二区三区| 99久热| 六月婷欧美丁香综合| 婷婷中文字幕| av网址在线| 91精品国产色猫| 99热大片| 婷婷五月天激情小说| 色v综合网| 四色AVwww| 亚洲精品久久久无码| 九九五月天| 婷婷丁香五月综合网| 丁香综合婷婷开心激情网| 五月天婷婷乱论小说| 日韩成人中文| 六月丁香深深爱| 79精品视频在线观看,| 色婷婷偷拍| 五月天激情无码| 亚洲综合网在线| 婷婷激情五月吧| 婷婷久久五月| 最新日韩久热免费视频看看| 五五月五月| 九九综合| 在线国产精品色| 婷婷色情网| 五月天综合久久丁香91| 五月丁香激情综合网| 婷婷色五月91啪啪| 欧美激情2025| 真实的国产乱XXXX在线91| 另类色视频| 色婷婷免费观看| 七七色色综合| 淫视馆AV在线| 密视AV综合在线| 五月婷婷久草在线视频综合| 骚逼视频一区2区| 一级A片天天操夜夜操| 午夜不卡久久精品无码免费| 思思热性操| 东京热免费视频| 日本熟妇精品99| 婷婷五月天激情小说| 欧美三日本三级少妇三99| 色玖玖综合| 色婷婷a v| 久久精品婷婷| 精品国产va久久久久| 五月丁香综合啪啪| 色碰碰视频| 天天插天天日| 97人人干人人操| 亚洲第一综合| 无码G高清天| 无码成人播放器| 丁香5月婷婷| 超碰中文字幕在线| www.91九色| 99亚洲精品视频在线观看| 婷婷久久网| 色婷婷小说| 9l视频自拍9l九色9l成人| 九月丁香婷婷综合| 激情五月综合网| 91 影音先锋| 天天拍久久| 99热免费18| 日韩在线一级| 日韩人妻无码精品| 五月丁香婷婷婷激情爱爱| 五月伊人网| 97干在线| 婷婷香五月天| 婷婷五月av| 国产成人精品一区二区三区视频 | 久久久久久97| 婷婷基地成人五月天| 综合六月久久| 天天插天天干| 激情五月天啪啪视频| 色无婷婷| 激情亚洲网| 久久日曰| 欧美激情VA永久在线播放| 五月天激情婷婷五月天久久| 婷婷人妻激情| 久热91| 天天爽免费视频| 超碰免费成人| 色色色五月天婷婷| 亚洲午夜电影| 九九视频网| 色婷婷激情视频| 亚洲欧美婷婷五月色综合| 婷婷五月俺要去| 九色在线观看91av| 国产精品18久久久| 日本一毛片| 婷婷六月插屄激情| 婷婷五月天激情综合| 色色色色色色综合网| 亚洲色无码| 1024人妻| www,99色| 直接看的AV| 韩国婷婷丁香五月| 久久9视频| 国产精品A片在线| 五月丁香综合| 亚洲婷婷五月| 久久 视频这里只有精总| 三级三久久线久久99久目本WW| 婷婷丁香成人色综合| 99爱在线精品视频免费观看| 亚洲激情图文小说| 玖玖爱综合网| www:99热视频| 久久婷婷综合五月| 夜夜操狠狠操| 日本婷久久| 色99热| 激情综合网,五月| 亚韩在线视频| 99视频在线9| 色三级色三级| av在线观看网址| 亚洲色无码A片一区二区麻豆| www.五月婷婷久久.com| 色婷婷www| 99久久99视频只有精品| 99热99美国在线观看| 九九色插| 国产午夜精品一区二区三区四区| 五月天久久网站| 俺也高清无码高清视频| 99九九精品| 亚洲色图81p| 五月综合激情图片| 综合久久激情久久| 亚洲欧美在线观看| 99久久九九| 天天骑天天操| 婷婷五月美女直播| 六月婷婷激情小说网| 99re这里只有精品视频6| 久热大香蕉| 婷婷五月综合网| 2015WWW永久免费观看播放| 五月婷婷激情网| 91操片| 色情五月天丁香社区| 天天爽,夜夜爽| 激情五月丁香综合网站 | 国产午夜成人免费看片无遮挡| 五月婷婷丁香六月| 日本狠狠色| 五月天久久婷婷| 99综合| 久色激情| 成人网址在线观看| 亚洲综合色网| 天天日日爽| 这里只有精品视频在线看| 天天添天天摸天天天天做| 五月天开心色情网| 深爱激情中文五月天av| 日韩色色色色色| www.日本久久videos| 99综合免费视频| 婷婷在线播放av| 五月丁香久人妻中文| 精品思思久久| 五月天久久综合| 欧洲一区二区| 色播婷婷大香蕉| 久久久久这里都是精品| 狠狠操.com| 中文字幕丁香五月| 婷婷五月天激情综合深爱| 五月天精品综合在线| 六月五月丁香五月欧美| 狠狠搞综合色| www.激情五月天| 久久婷婷六月综合| 91人操| 久久视频婷婷| 丁香五月激情综合| 99噜噜噜在线播放| 性爱先锋AV| 五月天激情网址| 这里只有精品99视频| 色五月婷婷五月久久| 淫荡综合网| 天天免费日日夜夜夜夜| 色色AV色色色东莞| 99九九在线| 国产精品美女久久久久AV超清| 五月成人丁香av91| 色色影院黄大片| 久久久久久久97| 77799热| 99视频精品全部免费 在线| 99热99色| 99久在线视频| 欧美成人一区二区三区在线视频| 91av色色乱视频| 原琪琪色影院| 久久久8| 97资源欧美日韩大香蕉超碰一区| 再次出发二| 五月天久久综合婷婷丁香| 久青操| 国产精品人成A片一区二区| 色啦啦视频| 五月丁香色综合| 色欲婷婷夜夜| 五月丁香六月婷婷无码| 色播丁香| 久草 tingting| 黄网在线免费观看| 天天爽夜夜爽| 人妻综合网| 字幕网AV中文字幕| 色婷婷伊人| 五月丁香综合激情在线观看| 婷婷色五月天在线观看| 九九热精品| 奇米影视在线视频| 91精品婷婷国产综合| 色婷婷婷综合五月天| 97色色视频| 免费观看欧美成人AA片爱我多深| 狠狠情色| 亭亭丁香aV| 色婷婷五月天在线| 99热在线观看精品| 午夜精品久久久久久久爽| 永久天堂日本| 五月玖玖| 婷婷五月激情在线视频| 婷婷五月天福利| 五月丁香六月婷婷激情四射| 五月丁香成人日| 久久色五月| 99色综合久久| 五月婷婷色播视频| 色5月丁香婷婷| 久久艹 五月天| 狠狠草网| 激情小说之五月| 日日操夜夜爽| 97日在线视频| 欧美性爱5月天天天看| 日本爆乳片手机在线播放| 国内一级片| 99热精品在线观看| 99热成人精品网站| 在线不卡AC| 色波激情五月天| 婷婷丁香花五月天| 色婷婷成人久久| 综合五月草| 五月开心深深爱激情综合| 色婷婷丁香五月| 色婷婷综合久久久久| 久久久五月激| www久| 99ri在线| 91要啪| 日本一级大片| 丁香六月激情综合啪啪| 亚洲欧美日韩VIP| 99爱视频精品| 五月婷婷六月色| 精品自拍99| 天天综合亚洲综合| 一本色道久久88综合日韩精品| 九色婷婷| 91操网| 1024在线观看免费视频| 五月婷婷免费在线观看| 九九成人| 丁香五月伊人| 久久机热思思热| 大香蕉 婷婷| 色插综合网| 九月婷婷色色| 五月丁香婷婷99| www夜夜操com| 丁香六月综合| 色六月视频| 欧美性爱丁香五月| 婷婷五月天a| 九色综合网| 五月停停丁香| 五月婷婷六月色| 久月婷婷| 热99在线| 亚洲国产精品五月天| 九九性视频| 色五月婷婷婷婷婷婷婷婷婷婷| 99久在线精品99re8热| 五月天色综合| 日韩AV大全| 五月丁了香蕉综合| 亚洲va成人va成人va在线观看| 久久青青日本视频| www.婷婷六月天| 97色97干| 99热这里有精力| 亭亭玉立国色天香| 色噜噜狠狠色综无码久久合欧美| 国内裸舞二区| 伊人热在线大香蕉| 国产三级秋霞| 国产无人区大片| 五月婷婷片| 五月婷婷9| 久久超视频| 婷婷色五月丁香六月欧美啪| 99久热| 99成人网站| 极品精品一区二区三区在线| 婷婷五月开心中文字幕色| 色色婷婷综合| 91精品久久久久、久五月天| 五月丁香六月婷婷啪啪| 武则天精品久久| 激情四射五月天偷偷看婷婷| 中文字幕无码人妻少妇免费视频| 天天精品视频在线观看视频| 国内一级片| 天天天综合网| 91超碰在线观看| 丁香婷婷色情| 99热国品免费| 在线播放人妻| 日本丁香五月| 狠狠干五月天婷婷网| 无码AV免费精品一区二区三区| 丁香五月婷婷激情中文| 另类五月激情| 丁香五月成人婷婷| 天天插天天玩天天干| 成人中文网| 日本美女五月天| 五月丁香手机在线| 五月天丁香婷婷久久九| 狠狠干在线视频| 91视频久久久| 九九成人视频| 久久偷拍综合五月天| 久久婷婷成人| 男同91| 欧美va在线观看| 狠狠色噜噜狠狠色噜噜噜999| 久久婷婷五月天丁香| 六月天婷婷| 66久久视频在线| 大香蕉AV电影在线| 综合久久高清| 天天舔天天| 亚洲在线视频321| 99久re热视频精品98| 日韩色五月| 九九视频免费| 国产欧美精品AAAAAA片| 五月婷婷视频| 97色五月天| 色吧婷婷| 欧美性爱丁香五月| 婷婷色五月天在线观看| 欧亚洲在线高清视频| 久久丁香婷婷色情综合| 五月天综合色| 丁香五月激情婷婷| 五月丁香啪| 99视频这里有精品| 色爱综合网| 天天射射夜| 狠狠色噜噜狠狠狠狠综合| 性爱久久| 九九热在线视频观看| 婷婷色五月偷拍| 91九色精品| 万月丁香狠狠爱| 婷婷激情六月| 亚美欧色影院| 狠狠色丁香99| 日本色色图| 一级内射毛片| 99亚洲精品| 亚洲热视频| 五月色情婷婷| 九色无码| 久草五月丁香婷婷综合| 激情综合啪啪| 天天爱天天狠天天透| 婷婷丁香激情| 色综合播放| 五月丁香六月婷| 成人美女网| 日日操日日撸| 中文AV在线播放| 这里只有精彩视| 性婷婷| 國語久久婷| 9久久精品视频| 91国产精品视频播放| 色婷婷丁香A片区毛片区女人区| 久久婷婷五月天激情| 99成人免费视频| 五月丁香六月激情网| 少妇日麻屄| 激情五月,色五月| 久久综合五月天| 偷拍91九色| 九九超日本| 7777久久亚洲中文字幕| 日逼AV影音先锋男人资源站| 99操| 99无码视频| 97人人超| 久久激情五月| 91丨九色丨熟女丰满| 激情六月婷婷| 26uuu最新地址| 婷婷五月天黄色小说| 99久久思思| 成人网站免费sxj| 亚洲五月天,激情视频| 精品激情| 久婷婷色| 色婷婷aV四虎| 婷婷综合伊人| 大香蕉在九| 亚洲成人在线观看av| 九九人人操| 天天综合网在线| 日韩无码色色| 五月婷婷成人| 婷婷五月在线视频| 色色五月婷婷| 婷婷基地爱| 99色在线| 成人免费120分钟啪啪| 亚洲精品又粗又大又爽A片| 专区无日本视频高清8| 一本大道嫩草AV无码专区| 六月激情网| 精品一区二区三区四区五区六区| 久热伊人| 99色天堂| 婷婷五月丁香六月| 九月婷婷综合| 九九视频在线观看视频6| 丁香五月之久操视频| 97精品人人A片免费看| 欧美性生交XXXXX无码小说| 岛国在线观看91| www...com黄在线观看| 色站9/| 94干大香蕉| 亚洲操精品| 色色自拍视频网站| 日韩无码人妻一区二区三区综合| 狠狠操天天操| 校园激情 亚洲| 涩涩涩五月天| 婷婷九月亚洲| 激情五月综合亚洲另类| 亚洲精品视频在线| 疯狂做受XXXX高潮A片| 成人性生活免费观看。| 国产亚洲99久久| 99超级碰免费视频| 狠色狠色狠色狠色狠色网| 99热99干| 九九99九九99| 97精品欧美91久久久久久久| 色吧五月| 七七色综合| 久激情网| 五月天婷婷丁香蜜桃91| 中文乱子伦视频| 午夜激情综合| 亚洲综合五月天| 久综合九综合99| 综合久久五月天| 丁香狠狠| 久久五月天婷婷| 99视频| 97碰碰免费.视频| 开心五月婷婷婷美女| 琪琪理论片| 六月天无码网址| 日韩另类在线观看| 丁香久久| 日韩xx在线| 98毛片| 99热综合网| www.夜夜| 婷婷丁香成人五月天| 大香蕉婷婷丁香天堂AV| 九九热在这里只有精品| 六月丁香中文字幕| 天天舔天天爽| 亚洲av无码影院| 色色亚洲无码| 欧美影院| 午夜不卡久久精品无码免费| 色欲五月婷婷| 91大屁股| 九九这里都是精品| 丁香五月婷婷欧美性爱| 九九色婷婷| 99热这里有精力| 五月天激情网图片| 一本色道久久88加勒比—| 狠狠擼综合| 欧美日比视频| 久久久婷婷婷| 久久婷婷丁香视频网| 麻豆123区| 狠狠色噜噜狠狠狠888| 吊色AV男人的天堂| 日韩99精品| 日本欧美成人片AAAA| 欧美内射AA| 97干在线观看视频| 一级黄色操B| 欧美综合激情五月天| 日本欧美成人片AAAA| AV堂狠狠干| 久久久久久久97| www.9797国产| 激情丁香五月天图片| 亚洲99精品九九在线| 色婷婷丁香五月高清在线| 久热免费| 欧美精品999| 天天色丁香| 九九青草热| 99热这里只有精品1| 狠狠综合久久综合| 久热这里只有精品在线| 影音先锋高清无码资源网| 婷婷在线五月天观看| 九九色婷婷| 五月丁香 六月婷婷a| 久久精品这里只有精品免费首页| 日本啪啪天堂| 丁香五月色色| 六月丁香av| 激情视频网址| 99超级碰免费视频| 五月婷婷大香蕉| 99热91| 亚洲色五月| 丁香色五月婷婷17C| 五月婷婷激情| 熟女乱论网| 嫩BBB搡BBBB榛BBBB| hd五月婷婷在线| 日韩一级一片内射视频4K| 婷婷六月色情| 超碰69天堂| 婷婷涩涩五月天| 色噜久| 9久国产| 日本久久精品| 日本欧美成人片AAAA| 色99视| 色青青电影色五月| 综合五月丁香六月婷婷| 色色五月激情| 婷婷久久五月天丁香| 亚洲人妻AV| 精品无码久久久久久久久| 五月丁香少妇A| 碰超亚洲| 婷婷免费视频| 九九综合伊人| 97在线精品| 天天干天天 亚洲| 色婷婷五月综合色婷婷| 婷婷六月综合基地| 综合色色网| 免费视频WWW在线观看网站| 日日激情网| 五月天婷婷丁香花| 九九人人操| 国产色婷婷亚洲| 亚洲中文AV| 91九色中文字幕女在线观看| 九九色热| 国产XXXX搡XXXXX搡麻豆| 色五狠狠| 久久婷婷色综合| 国产精品大香蕉| 色色色国产| 色婷婷丁香综合中文字幕| 久99| 久久人妻www| 99色干| 国产真人做爰视频免费| 色五月天在线观看| 丁香五月影院| 综合久久激情久久| 在线观看欧美| 久久99热免费| 操逼综合网| 激情综合网五月天| 九九热短视频在线观看| 丁香五月网| 婷婷综合五月天| 五月天色社区| 五月六月播婷婷| 激情婷婷激情在线不卡| 99久.| 九热视频这里只有精品| 天堂网啪啪| 被强行糟蹋的女人A片| 久久怕怕视频| 天天色天天色天天色天天色天天色天天色| 蜜臀综合久草| 婷婷丁香在线| 婷婷五月丁香六月天亚洲综合| 国产xxxxx在线观看| 丁香五月六月激情| av在线免费播放| 一本色道久久综合狠狠躁一二三| 97热在线精品|