99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

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
返回資訊列表
这里只有精品9| ji'qing'luan'ren'lun| 九九热视频在线观看| 婷婷五月天av网| 疯狂做受XXXX高潮A片| 99爱免费视频| 婷婷色色综合激情| 99热最新精品| 五月天AV大香蕉| 涩五月婷婷| 五月婷婷丁香在线视频| 婷婷五月娱乐在线| 美国少妇性做爰| 色色色色色色网| 色婷婷五月综合| 激情影院丁香五月| 五月婷婷欧美| 婷婷免费视频| 另类综合网| 综合网啪啪| 日本不卡一区二区三区| 可以直接看的av| 五月婷婷深爱六月| 五月熟妇婷婷久久| 国产xxxxx在线观看| 日本久久色| www.五月婷婷久久.com| 日本九九视频| 五月丁香综合中文| 97精品自拍视频| 先锋资源996| 我去色色网五雨天| 91热手机在线| 综合网色综合| 99热只有精品在线| 激情中文在线| 91操在线| 综合网网欲色| 九九人人看| 少妇大叫太大太粗太爽了A片| 久9久成人精品视频| 婷婷五亚洲| 综合五月天亚洲婷婷| 久久一级免费黄色片| 91久久久久久| 99色| 成人做爰A片免费看视频| 92久久| 99这里是精品| 99er精品视频| 深爱激情五月网| 能看的av片| 人妻狠狠操| 91精品91久久久中77777久久玖玖九九 | 久久久久久人妻| 日本综合久久| 久久九色| 欧美成人猛片AAAAAAA| 日本色道视频网站| 成人做爰高潮A片免费视频| 久久久99视频| 丁香五月激情婷婷| 亚洲乱码日产精品BD| 538在线精品| 任你搞网站| 99热精品无码| 久久激情视频| 国外亚洲成AV人片在线观看| 亚洲AV久久久久久久久久久久久久久久| 777精品久无码人妻蜜桃| 久久五月视频| 久久视频在线视频| 五月天激情黄色网址| 99热精品10| 五月婷婷综合性爱噜噜| 99ri精品| 色婷婷综合中心| 五月天自拍网| 亚洲国产精品VA在线看黑人| AA丁香综合激情| 五月天婷婷激情小说电影| 亚洲激情视频在线观看| 国产婷婷色综合AV蜜臀AV| 久久九九综合| 99热人人操人人操| AAA久久久| 色色色综合网| 热思思| 亚洲VA口| 亚洲熟妇AV乱码在线观看| 国产真实乱了老女人视频| 天天日夜夜| 强辱丰满人妻HD中文字幕 | 久热视频A.| 伊人青草成人| 丁香五月成人网| 成人在线日韩欧美| 9久热精品在线视频| 9久热精品在线视频| 九色99视频| 一区二区三区四区牛| 欧美精品A片一区在线观看| 光棍影院日韩精品| 亚洲婷婷六月天| 自拍盗摄 另类| 六月色婷婷| 久热久| 丁香婷婷五月激情| 五月丁香婷婷激激激综合网色播| 99久久久免费| YW无码| 99热1| 99小精品| 亚洲无码播放| 五月丁香婷婷伊人日韩| 婷婷五月天色综合翘| 色区域网站视频| 色日本综合| 伊人色综合网| 综激情网| 久久久这里有精品| 强壮的公次次弄得我高潮A片日本 | 玖玖婷婷五月天毛片| 成年人夜夜喷水| 激情综合网络插| 色婷婷小说| 亚洲中文av| 综合在线观看99| 成人AV免费观看| 五月丁香龟婷婷| 五月丁香久久| 久久精品63| 天天操天天日天天爽| 区美毛片子| 丁香五月之久操视频| 操人91| 亚洲欧美999| 狠狠狠婷婷五月综合| 亚洲激情五月| 丁香九色不卡aaa| 开心 五月 综合| 五月天天综合| 啪啪黄页网| 婷婷六月中文字幕| 成人国产欧美大片一区| 丁香花五月天| 极品人妻VIDEOSSS人妻| 99激| www久视频com| 丁香六月爱综合| 五月丁香婷婷色| www. 五月. com| 久久成人天| 天天色播| 激情综合色五月六月婷婷| 狠狠综合网| 婷婷五月天 丁香五月天 裸体 | 欧美日韩大黄| 情欲禁地| 免费试看小视频 99| 久9热| 色婷婷五月天在线观看| 激情综合另类| 成人精品一区二区三区四区五区| 色色色热热热| 亚洲精品五十一区| 男人先锋久久| 日本色色色| 日本91在线播放| 婷婷色婷婷亚洲成人| 色综合区| 久久网站观看免费欧洲国产 | 99在线精品免费视频| 国产九月婷婷| 伊人婷婷色| 成人人操| 九九热视频精品| 亲子乱AV一区二区三区下载| 亚洲精品亚洲人成人网| 色婷婷五月综合在线| 婷婷六月色| 亚洲成人色五月天| 日本wwww在线| 色色色国产| 综合激情五月天| 天天爽成人综合网站| AV九九| 超碰人人色| 五月激情站| 99五月丁香丁| 丁香婷婷六月| 99人妻碰碰碰久久久久禁片| 婷婷五月 丁香六月| 国产乱妇无乱码大黄AA片| 开心婷婷五月花| 丁香五月婷婷色综合| 欧美激情五月| 丁香五月日韩| 久久九九99视频| 天堂爱爱| www91精品| 激情无码网| 草综合网| 丁香五月婷婷亚洲激情四射| 五月丁香六月在线| 99免费在线| 亚洲一区国产传媒| 婷婷丁香激情五月天色色色| 婷婷色九月| 9 1在线视频| 91欧美| 异能之下短剧免费观看全集| 婷婷综合久久综合| 国产成人亚洲综合A∨婷婷| 伊人婷婷五月| 九九五月天| 精品少妇人妻AV无码专区偷人| 另类小说激情五月天| 影音先锋一区| 91男女视频在线观看| 成人丁香五月天| 色综合久久44| 人妻六月天| 色婷婷小说| 国产乱妇乱子伦| 亚洲精品影视| 九九色之九九色之88| 囯产精品久久欠久久久久久九大| 99性爱视频| 啪啪综合网| 操逼电影免费看| 色五月色五天色情网| 六月天六月婷| 热久久思思热思思| 啪啪综合网| 极品人妻VIDEOSSS人妻| 色五月六月| 无码人妻一区| 婷婷五月天亚洲综合网| 激情5月婷婷狠狠干| 成人在线视频一区| 任你搞在线观看视频| 亚洲乱码日产精品BD在线观看| 丁香五月婷婷在线| 激情五月天婷婷五月天| 丁香六月婷婷综合在线| 六月婷婷七月丁香| 五月丁香| 激情五月天婷婷图| 色噜噜综合网| 操日本三片99| 超碰色女人| 激情五月婷婷丁香综合网| 97人人操在线| 日本久久精品| 久操大香蕉| 综合久久伊人| 高清成人综合| 九九热10| 秋霞免费三级片| 久久人人九| 人操人| 99热热热天天人人人超超碰| 久久婷婷七月丁香| ou洲色吧| 高清国产AV| 五月婷综合| 丁香五月婷婷啪啪视频| 丁香五月婷婷操逼| 视频久久9| 自拍视频99| 1024国产在线| 色色图五月天| 五月丁香综合影院| 亚洲黄色精品| 五月天婷婷AV| 天堂A∨在线| 97欧美在线| 六月婷婷五月天| 影音先锋777xfplay色资源网站| 激情 婷婷 插| 久久综合人妻| 色五月首页| 日韩九区| 一本色道久久88综合日韩精品| 婷婷伊人网| 丁香五月偷拍| 日韩五月婷婷久久| 开心五月综合激情网| 婷婷五月电影| 丁香成人综合| 99热九九热| 99啪啪网| 无码激情AAAAA片-区区| 日日操夜夜操中国无码| 久久九九玖玖| 久色成人| 综合在线色婷婷| 五月丁香久久| 五月婷婷综合网| 久草热久草在线视频| 亚洲精品无码99热| 国产.亚洲.欧洲视频在线| 色色色色色色色色色色色色色五月天| 色婷婷久久综合| 九月丁香婷婷综合激情| 五月婷综合激情| 日韩欧美一道四区中文字幕| 97五月天婷婷午夜| 五月婷婷中文字幕| 五月激情综合网| 五月停性愛| 丁香久久九九99| 日本99热| 六月激情久久| 国产黄大片在线观看画质优化| 激情综合网激情五月天| 婷婷影院欧美| 丁香五月第九色| 色婷婷色99国产综合精品| 丁香成人五月天| 九久久婷婷| 伊人久久婷| 五月婷婷co.m| 超碰女人天堂| 91刘玥视频在线观看| 婷婷五月丁香基地在线视频官网| 综合五月婷婷| 伊人狼人干| 九月激情网| 婷婷成人小说综合| 人人播| 思思热99er| 久久久久久综合88| 婷婷天天日婷婷| 天天日天天舔| 999热在线视频| 综合激情深爱| 日韩二区搞逼插逼毛片| 丁香五月自拍| 97久久视频| 国产91在线视频| 91|疯狂丨高潮丨对白| 日本久久爽| 激情婷婷五月色| 欧日韩成人| 热99.com婷婷| 婷婷五月天免费| 岛国av网站| 九九色天堂| 色婷婷五月天小说网| 任你日视频| 久久月天堂| 久久99久久99精品免视看婷婷| 丁香五月婷婷偷拍| 久久伦乱| 狠狠狠夜夜夜| 69久久久| 九九久热| 婷婷五月综合网激情| 99色区| 日韩视频99| 九月av| 丁香六月在线| 色综合色色色色| 操丝袜视频影院导航| 午夜成人AV在线| 色婷婷小说网| 亚洲色图五月丁香| 在线中文字幕视频| 婷婷操逼| 香蕉久久国产AV一区二区| 99热99久久| www,av好吊操| 77777亚洲午夜久久| 99亚洲色色| 拍色综合| 99免费视频| 日本123区日韩欧美不卡在线看| 99性感视频| 激情开心五月天| 丁香五月激情婷婷视频| 婷婷五月天福利| 五月婷婷高清| 国产无遮挡又黄又爽免费网站| 777丁香六月青青草婷婷综合久月| 天天日天天干天天操| 桃色五月婷婷| 久草热久草在线视频| 少妇激情五月婷婷| 日本nghangse中文字幕| 五月丁香综合中文| 婷婷五月丁香91| 激情文学久久| 国内久久婷婷| 一级精品999WWW| 五月丁香婷婷色色色| 另类视频一区| 26uuu欧美亚洲日韩| 99热在线只有精品| 99视频在线观看欧| 伊人综合婷婷| 婷婷五月成人| 色99在线观看| www,色婷婷| 99久久9| 婷婷五月成人有| 国产精品久久久爽爽爽麻豆色哟哟| 丁香五月冃欧美| 丁香狠狠操| 色色五月婷| 天天综合天天做天天综合| 五月四色激情| 精品人人操| 一區四區歐美日韓| 免费日本aⅴ中文字幕 | 久久66er久久| 99ri视频在线观看| 欧美精品999| anquye五月| 免费成人网在线观看| 亚洲中文字幕网| 西瓜美女a片| 99久久久久久久| 五月丁香婷婷基地| 丁香五月婷婷在线| 丁香婷婷六月激情| 婷婷色中文字幕| 伊人香大香蕉视频| 丁香婷婷深情五月亚洲| 99免费在线| 深爱 五月天| 五月天伊人久久| 99爱视频在线| 天天做天天爱天天高潮| 五月天婷婷导航| 色婷婷久久综| 67194中文在线| 久久草大香蕉| 亚洲激情综合| 婷婷五月骚厕所| 色婷婷综合久久久久| 婷婷色色欧美综合网| 色五月色五天色情网| 五月婷婷精品无在线| 99re热精品在线视频| 91在线观看www| 这里有精品| 五月天婷综合| 99热这里只有精品5| 婷婷激情鹿城五月天| 超碰人人操人人干| 3p久久| 91九九九九九九| 狠狠综合网| 人妻九九九九| 97干视频在线| 丁香五月天社区| 五月婷婷激情中心| 亚洲AV无码久久精品色欲| 六月婷婷av| 丁香五月综合久久| 日日噜噜夜夜狠狠久久丁香五月| AV大香蕉| 最近韩国日本免费高清观看| 久热大香蕉| 91丨九色丨高潮丰满日本| 六月 丁香 视频| 99性爱无码| 久草久青福利| 一區四區歐美日韓| α久久| 亚州美女| 97精品人人A片免费看| 天天日,天天干,天天操| 免费精品99| 欧州色色| www.五月天婷婷| 日本操逼九九九九58日本操逼| 色五月天网| 五月婷婷五月天天| 激情五月天婷婷免费观看| 激情伊人| 美女五月激情| 九九热思思热| 久久久精品人妻录| 久久六月天| 久久久久久久人妻| 殴美日比视频| 五月婷婷激情综合| 少妇性BBB搡BBB爽爽爽视頻| 操逼电影免费看| 丁香六月综合| 91综合网| 国产 亚洲 在线| 97超碰人人操| 久久精品国产色| 亚洲无码成人性爰网| 九九这里精品| 狠色色狠网| 男人的天堂婷婷色五月| 97久久久久久久久久久| 色婷婷色综合| 五月久久婷婷| 成人小说 五月天 婷婷| 综合激情网激情五月。| 人妻激情综合| 曰韩少妇内射免费播放| 国产黄色av| 五月丁香激情婷婷| 99热99在线| 操人妻90p| 这里只有精品9| 夜夜谢天天干| 97人人操人人干| 99视频在线9| 六月色激情| 亚洲精品电影| 婷婷射婷婷舔| 婷婷六月综合激情| 嫩草视频| 婷婷色五月婷婷姐妹| 台湾佬天天日丁香婷婷五月天| 日欧大屏操| 亚洲激情网| 久久99热网| 婷婷五月天AV在线| 久久视频九九视频| 欧美熟女99| 国产精品久久久久9999小说| WWW.久久久久久久| 四色女婷婷| 激情性爱五月| 六月色播| 九九热免费视频| 激情啪啪五月| 精品热九九| 亚洲超碰在线| 九九热视频在线观看| 亚洲无码99| 超碰色天堂| 99开心五月五月丁香激情| 婷婷色欧美激情| 99久久激情视频| 色综合久久无码| 久一这里有精品国产| 色五月欧美| 丁香婷婷狠狠97| 狠色综合网| www,婷婷五月天,com| 另类在线| 久艹大香蕉| 99精品在线下载| 精品久久人妻| 国产ava| 色五月婷婷很很操| 狠狠久久婷五月综合色| 色五月开心五月激情五月| 婷婷综合视频| 一起草av在线观看| 九九精品在线观看视频6| 成熟妇人A片免费看网站| 大香蕉网站,大香蕉综合| 91人人爽久久涩噜噜噜| 人妻激情在线| 9999色色色色| 日日爽夜夜爽| 欧美图片丁香五月天| 久热这里只有精品在线| 亚洲AV影片在线观看| 久久老码第一| www..999热久| 亚洲不卡| 国产免费一区二区在线A片视频| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 色婷婷在线视频久| 丁香六月啪啪| 丁香六月婷婷综合麻豆| 九九99九九精品免费| 亚洲天堂AAA| 激情都市另类| 久久亚洲激情五码| 久久98热re| 成人在线不卡| 青青操绿aaa一区日v| 五月综合激情婷婷六月色窝| 五月婷婷久久综合| 五月婷婷色欲| 99在线精品视频免费观看20| 人妻激情网| 丁香五月婷婷六月| 高清成人综合| 五月婷婷影院| 夜夜 操无码| 激情四射五月天| 夜夜夜天天操| 国产真实乱了老女人视频| 婷婷丁香五另类网站| 日韩av变天就操逼不卡区| 亚洲九九99精品视频在线播放| 五月天久久色| 五月天六月色| 激情五月天色色| 天天插天天爽| 人妻操在线看| WWW·色色色·COM| 丁香五月婷婷五月天| AV色婷婷| 国产偷人爽久久久久久老妇APP| 婷婷丁香五月天色区| 99久久婷婷精品视频| 热久久99热欧美国产亚洲| 丁香五月婷婷色偷偷| 性视频久久| 五月天色色激情综合| 精品无码久久久久久久久| 狠狠狠五月婷婷六月丁香| www99xxxx五月丁| 丁香五月激情啪| 婷婷六月丁香在线| 亚洲综合色激情色五月| 综合久久97| 成人色五月天| 青青草tp| 深爱五月激情综合| 人妻六月天| 人人爱国产| 久久深爱激情网| 日韩无码人妻一区二区| 99久久久久| 九九久热| 五月天婷亚洲综合在线嫩草网| 国产毛片操B| 91精品久久久久久综合五月天| 五月丁香六月婷婷久久久综合| 超碰成人在线观看| 日本三日本三级少妇三级66| 噼里啪啦完整版中文在线观看| 久色| 天天天天天日| 色综合综合色| WWW、日本色丁香co m| 五月婷婷草| 丁香五月婷婷综合啪啪| 亚洲精品视频在线播放| 大香蕉久热| 午夜色丁香| 色天天综合色| 欧美va亚洲va| www99热| 日本三久久| 丁香六月欧美| 丁香花综合永久入口| 人人操av| 97色婷| 91九色精品熟女内射| 97五月天婷婷午夜| 嫩草AV久久伊人妇女超级A| 超碰99在线观看| 婷婷激情人妻| 日本美女五月天| 婷婷干五月综合在线播放| 26UUU在线观看| 99爱这里只有精品| 六月婷婷六月天天在线免费| www.激情.com.| 超碰免费大香蕉| 五月香蕉婷婷| 亭亭色网| 色五月激情网| 中文字幕婷婷五月天| 婷婷和五月天| 五月丁香 六月婷婷a| 日本片日本片祼观看网站在线看中文版网页在线看 | 激情性爱婷婷| 久久青青日本视频| 激情婷婷九月| 色五月天丁香婷婷| 性欧美日本| 亚洲AV综合在线观看| 91色涩| 亚洲中文字幕AV| 婷婷五月在线免费| 九九家庭影院| 色五月天成人在线| 激情五月婷婷综合色播小说| 99精品大片| 久久五月天婷婷| 九九无码| 婷婷丁香色五月| 婷婷色在线| 丁香五月五月婷婷欧美大香蕉| 丁香,开心成人,久久| 久久丁香综合精品综合| 五月丁香综合| 99久视频| 婷婷色影音天| 日韩无码性爱| 久99| 天天爽天天透天天爱| 精a品a| 五月色色色| 丁香五月激情五月| 二区成人视频| 丁香花五月天激情| 五月色 亚洲| 色久五月天| 婷婷激情性爱| 亚洲妇女熟BBW| 激情婷婷22月间| 99精品一二三四视频| 九九热99re8热免费观看| 午夜爱爱爱成人| 五月天婷婷在线视频| 久久综合99| 婷婷香草网| 色五月婷婷操逼| 婷婷免费成人视频| 九九热精品| 婷婷99狠狠| 久久99免费视频| 66精品国产成人| 色五月亚洲开心网| www.婷婷五月| 综合精品啪啪| 久久激情综合| 狼人婷婷综合| 综合色、色综合| 久久资源网五月婷| 国产色色色色| 被男人添B超爽视频| 日本黄色在线观看| 五月天久久www| 成人 在线 日韩| 九月性爱网| 色激情综合狠狠婷婷| 婷婷六月丁香五月| 日本欧美成人片AAAA| 婷婷五月综合网| 久噜久噜| 亚洲综合五月天| 色久影院| 五月亭亭六月天| 青草视频在线观看视频| 激情九月婷婷| 天天色视频| 久久综合五月天激情小说网站 | 欧美性爱5月天天天看| 日韩操人| 五月天丁香久久| 这里只精品热在线18| 天天爽夜夜操| 亚洲综合在线伊人婷| 欧美成人日韩| 久热爱大香蕉在线蜜臀悦色 | 另类小说五月天激情| 亚洲综合五月| 日本婷久久| 九九婷婷网五月天| 91a片爽| 久久有码| 97在线观视频免费观看| 亚洲精品网站色视频| 色碰碰| 97电影99热| www.婷婷五月| 五月婷婷,六月婷婷| 色丁香婷婷美女视频网站| 六月丁香五月婷婷| 超碰在线91| 超碰91在线| 婷婷色中文| 99热这里只有精品9| 国产99久9在线+|+传媒| 人人草人人视| 一区二区乱视频码| 免费观看欧美成人AA片爱我多深 | www.婷婷,com| 日日干日日| 99热国产婷婷| 大香蕉欧美在线| 五月久久婷婷天堂视频| www.99日本| 婷婷人人操| 丁香九月婷婷综合| 久久99久久久久久| 亚洲九九视频| 丁香 婷婷五月| 青草视频在线观看视频 | 婷婷婷久久久| 啪啪 综合网| 亚洲操逼片| 激情五月婷婷丁香六月| 亚洲热热视频| 激情婷婷五六月天| 爱99干99| 色婷五月天激情| 久久久欧美精品sm网站| 中文字幕在线免费观看视频| 色999亚洲人成色| AV九九| 综合网五月天123| AV网址大全在| 91干视频| 国产视频久色| 久久久久久婷| 久久与婷婷| 99热99网| av在线婷婷| 婷婷六月色| 99re6热在线精品视频播放速度| 久久婷婷热| 99热成人在线| 久久99久久99精品免观看粉嫩| 欧美婷婷| 色婷婷六月精品| 五月天婷婷激情网| 天天色天天日| 思思久热| 色综合久久88色综合天天99| 99国产精品白浆在线观看免费 | 密着浓厚中出乚交尾GvG935| 玖玖资源站中文| 午夜大香蕉| 日韩一级一片内射视频4K| 26UUU精品一区二区| 99亚洲精品视频在线观看| 麻豆观看夏晴子| 久久丁香综合| 亚洲AV激情五月综合网| 在线超碰精品| 五月婷婷影院| 天天日夜夜曹| 久久人妻乱子伦| 91丁香色五月| 久热99| 五月天婷婷色| 五月色导航| 人人九色| 99热香港| 超碰91在线| 婷婷色婷婷| 中文字幕簧片| BT综合在线视频观看| 五月婷婷视频| 五月婷婷中文| 天天综合网在线| 亚洲综合网激情小说| 夜夜躁婷婷AV| 超碰人人在线观看| 在线不卡视频| 色激情五月| 色婷婷六月天在线| wuyuedingxiang99| 国产av影片| 色色六月| 成人亚洲精品久久久久| 婷婷五月天丁香花| 久久婷婷亚洲| 婷婷五月情天| 日本在线噜噜| 精品综合久久久久久五月天| 99er日韩| 翔田千里 50岁 无码| 狠狠色狠狠色综合日日91| 国外亚洲成AV人片在线观看| 操人91| 91碰碰视频| 99视频精品在线| 五月精品免费XXX| 桃色伊人在线| 丁香六月婷婷激情综合| 日本三级中文字幕| 成人色图情色成人网 www.5b5b5bcom 五月天| 久久久久亚洲AV综合| 欧美日韩aaa| 久久婷婷色| 色在线99| 波多野结衣AV无码Porn| 99热首页| 日韩AAAAAAAAAAA片| 五月激情综合深爱| 日韩AV色色色| 久热这里只有精品66| 丁香五月婷婷色综合基地| 丁香丁婷五月激情| 亚洲综人色综网| 91性高潮久久久久久久久| 99噜噜| 九艹在线| 99自拍网| 99久久精| 99热精品少| 九九sese| 中文字幕日韩无码制服诱或| 激情合网婷婷| 开心五月丁香啪| 久色网五月| 色五婷婷| 99爱在线精品视频免费观看| 99精品亚洲| www.天天日| 婷丁香五月天| www.婷婷五月| www久| 国产婷婷色综合AV蜜臀AV | 国精产品一区一区三区免费视频| 人人艹艹艹| www...com黄在线观看| 国产性爱大片久久| 欧美啪啪网| 亚洲操逼片| 玖玖99福利| 色婷婷五月天小说网| 思思热精品在线观看| 婷婷色综合av| 国产亚洲在线观看| 丁香五月影院| 99超碰欧美| 9久久精品视频| 丁香五月综合婷婷| 乱女乱妇熟女熟妇综合网站| 26UUU亚洲欧美| 激情五月天激情小说| 久综合九| 电影爱拉战争免费观看| 99色看| 丁香久月| 99热久| 另类亚洲电影| 丁香大香蕉| 五月激情综合婷婷| 五月色色激情网| 丁香五月性| 国产午夜精品AV一区二区麻豆| 日日操无码| 午夜成人AV在线| 五月婷色丁香| 国产激情综合五月久久| 色婷婷综合网| 天天肏视奸| 亚洲av综合网| 伍月婷婷六月丁香| 中文字幕,综合,91| 精品夜夜澡人妻无码AV| 五月丁香综合久久夜夜| 久久激情五月| 天天舔天天摸天天透| 99热久草| 日本色啪| 青青.com| 丁香狠狠色婷婷久久无码视频| 久久99网站| 国产AV成人精品| 91热99| 九九色综合视频| 成人在线日韩| 97超碰99热99| 91热er| 99热免费精品| 丁香五月天堂婷婷| 五月婷婷xxx| 99爱视频在线播放| 婷婷五月激情综合| 91人碰| 亚洲噜色| 97婷婷色| 国产熟女一区二区三区五月婷| 丁香婷婷十月| 五月丁香激情综合| 另类图片色五月| 色99在线视频| 大香蕉五月婷婷丁香| 激情五月综合| 国产婷婷综合| 韩日AV片| 亚洲激情综合| 色五月色图| 99热这里有精力| 中文字幕 中文字幕明步| wwwss在线观看| 神马欧美精| 人操91在线| 狠狠操.COM| 激情小说五月天| 二色av| 99riAv1国产在线观看| 香蕉色色网| 婷婷激情啪啪| 成熟妇人A片免费看网站| 国产欧美日韩性爱| 激情久久久久久| 91岛国片| 亚洲综合五月天婷婷| 久热99中文字幕| 色婷婷AV五月天| 开心五月深爱五月| 婷婷激情丁香五月婷婷激情丁香五月婷婷 | 日本五月丁香| 99精品网| 99在线免费视| www.久久久久| 激情五月天激情网| 色五月婷婷五月天| 狠狠色婷婷在线| 人人干av| 婷婷五月天免费小说| 综合色色色| 99热99成人| www.五月天| 婷婷久久婷婷色五月| 丁香五月婷婷网| 无码四色色色| 综合色久| 日本特黄aaaaa| 强辱丰满人妻HD中文字幕| 亚洲AV激情五月综合网| 大学生高潮无套内谢视频| 91操色| 香蕉AV777XXX色综合一区| 天天干天天干天天干天天干天天干天天 | 亚洲丁香五月在线观看| 91九色 熟| 天天激情欧美美女| 亚洲无aV在线中文字幕 | 色色99| 午夜无码精品色综合久久| 天天色中文字幕女优AV| 激情五月天免费视频| 色婷婷五月天偷拍| 国产成人AV在线播放| 99激情网| 久久五月天婷婷视频| 婷婷中文字幕| av网站中文| 亚洲色图日韩网址| 国产综合色婷婷精品久久| 久久久久9999| 午夜天堂一区人妻| 国产色五月| 9999热在线免费观看| 久热欧美| 狠狠色官网| 变态另类色图| 五月天堂色| 天天色天天干天天插| 开心五月婷婷伊人| 色婷另类| 九九这里只这里只有精品| 99在线资源视频| 神马欧美精| 一起草av| 97人人妻人人艹| 丁香五月91| 日 日干 日日做| 中文字幕婷婷在线| 99这里有精品视频| www色中色综合| 影视av久久久噜噜噜噜噜三级| 色狠狠色| 婷婷九月丁香| 五月色亭丁香| 日韩成人电影Av| 91色色色| 噜噜狠狠色| 色五月xxx| 婷婷丁香大香蕉| 级情九色| 色五月婷婷影院| 丁香九月综合| 日本三日本三级少妇三级66| 97色色色| 99综合网| 九九成人精品| 色婷婷在线播放| 丁香五月婷婷老师网站| www.婷婷五月| 五月婷婷在线免费| 色婷婷五月天天天天天天天天天| 99热综合色图| 丁香五月婷婷天激情| 婷婷色导航| 激情综合色播| 激情伊人五月婷婷久久| 激情五月婷| 日噜噜色| 国产肥白大熟妇BBBB视频| 伊人碰碰碰| www,天天干| 天插天啪天啪天啪| 五月丁香亚洲校园欧美| 99热只有精品在线| 久久ri精品| 99色| 色色a| 在线成人网址| 天天天久久人人人合| 26uuu激情五月天| 色婷婷综合久色AV五色最新| 国产免费av在线| 91a片爽| 中文字幕网伦射乱中文| 99热在线看| 亚洲99综合| 狠狠干综合| 婷婷丁香五月在线播放| 欧洲亚洲欧洲99久久| 五月色婷婷亚洲| 97碰在线| 99人人干人人| 色色影院黄大片| 久久婷鲁| 成人国产网| 大香蕉久久视频久久视频 | 色色综合无码| 九九九日本熟女| 六月丁香婷婷色狠狠久久| 9 1大香蕉| 婷婷丁香六月天激情四射网| 国产无套精品一区二区| 五月丁香久久| 色婷婷综合网| 伊人久久艹| 久久99视频| 思思99热| 啪啪啪大香蕉| 国产精品久久久久久久久久| 欧美性爱五月天| 日本天天操| 天天爱天天爽| 精品久热| 国产毛片精品一区二区色欲黄A片| 色婷婷在线视频| 大香蕉AV在线| 亚洲熟妇AV乱码在线观看| 搡BBBB搡BBB搡18| AA片在线观看视频在线播放 | 青草五月天| 9九色首页| 99re免费精品视频| 欧美激情综合| 欧美性爱五月天| 国产肥白大熟妇BBBB视频| 黄桃AV无码免费一区二区三区| 国产成人综合亚洲| 亚洲天堂色| 欧美日韩中国| 99热在线精品播放| 激情五月婷婷丁香六月| 五月天六月丁香| 襙逼网| 天天干狠狠| 色欲天天综合| 综合色色网| 六月五月天婷婷涩播在线| AV变态另类一区二区| 婷婷五月天网址| 久久丁香| 天天摸日日舔狠狠添婷婷婷| 色色免费网战视频| 丁香五月婷婷AV在线| 色欲天天综合| 五月丁香激情综合网| 色欲AVV| 日韩日比视频| 色八月婷婷| 丁香五月激情婷婷| 激情久久久久久久久| 婷婷爱五月| 色五月婷婷7777| 婷婷丁香亚洲色综合91| 五月伊人综合| 深爱五月婷| 99在线资源| 久99| 久热婷婷| 亚洲欧洲一二| 99热9| 亚洲国产色色| 日韩啪啪网| 婷婷五月天激情网| 六月丁香婷婷大香蕉| 美日韩成人| 五月婷婷六月奇米网丁香| 婷婷激情五月色综合| 五月丁香激情综合网| 91919191919久久成人视频| 亚洲色综久久五月| 色婷婷XXXXX| 夜夜操激情| 丁香五月六月| 久久久九九九 99| 日亚二欧美| www.久久五月天.com| 久久综合影院| 国产精品久久久久久喷浆| 天堂二区| 色五月婷婷色| 五月情色天| 亚洲爆乳无码精品AAA片蜜桃 | 天天草天天日| 97操操| 国产永久一黄| 五月总合激情网| 四月婷婷五月丁香| 久在线88综合| 91Chinese在线| 五月婷婷中文字幕| 依人大香蕉| 麻豆精品| 久久久久99精品成人片| 五月丁香啪啪啪| 亚洲超碰中文字幕| 九九综合影音先锋| 九九热在线观看视频| 99久热| 五月天色色色色色| 婷婷五月激情基地| www久| 99九九热视频| 免费99情趣网视频| 日韩欧美一级大黄网站| 亚洲无码免费看| 亚洲射激情| 五月综合激情| 亚洲国产另类av| 日韩精品色| 国产亚洲精品久久久久久郑州| 情色五月天网站| 热热久久99| 国产性av| 婷婷丁香水多多视频| 天天干电影| 六月丁香停| 五月叮香啪| 99久久婷婷综合| 亚洲另类久久| 少妇人妻丰满做爰XXX| 在线成人网址| 狠狠爱五月婷婷| 九九99在线视频| 久久精品只有这| 日本精品人妻无码77777| 99在线资源视频| 亚洲国产黄色电影| 五月婷婷丁香综合| 日韩乱轮AV| 热久久成人| 色色亚洲| 日韩五月婷婷| 伊人久久婷婷| 日韩黄色电影| 五月天偷拍| 亚洲综合另类| 日本系列_4页_777FP| 丁香 久久| www.夜夜操.com| 日韩伊人大香蕉| 婷婷久久免费| 婷婷狠狠操| 婷婷午夜综合| 五月狠狠| 996er热| 天天色月| 国产伦亲子伦亲子视频观看| 五月婷婷成人w|