1. 為什么要引入右值引用,const的左值引用不一樣可以bind到右值嗎?或者為啥不直接用左值引用就可以了。右值的概念是C++98里就存在了,C++11新引入的是右值引用,這個我沒有回答準(zhǔn)確。
2. std:move的實現(xiàn)機(jī)制,里面做了什么,為什么這樣做就可以產(chǎn)生一個右值reference,這個過程是否涉及引用塌陷。
3. 完美轉(zhuǎn)發(fā)中的forward的實現(xiàn)機(jī)制,完美轉(zhuǎn)發(fā)是什么,什么場景需要用到完美轉(zhuǎn)發(fā);要理解里面的原理你才能回答好!
4. lambda表達(dá)式的類型是什么?我當(dāng)然不知道了,從沒想過這個問題。
5. auto搭配forward reference之后變量型別的推導(dǎo),大概就是effective modern C++那本書最枯燥的那塊內(nèi)容。
NVIDIA(英偉達(dá))C++程序員面試題
6. 讓你實現(xiàn)auto推導(dǎo),你怎么實現(xiàn)?你怎么判斷應(yīng)該是推導(dǎo)出來為左值還是右值?
7. unique_ptr和shared_ptr有什么區(qū)別?能相互轉(zhuǎn)換嗎?shared_ptr比unique_ptr慢在哪里?為什么多了個引用計數(shù)就會慢,照理引用計數(shù)只會多小號一點內(nèi)存和少量的在初始化階段的運算?我回答是為了handle多線程的下引用計數(shù)的保護(hù)會導(dǎo)致有些開銷,然后面試官就問C++ automic是否了解?
這些問題都蠻有挑戰(zhàn)的,我平常工作中會看些相關(guān)的資料,但是鉆研的不夠深入,有些概念有些印象有點了解但沒有融匯貫通。于是在和面試官這樣資深的人交流中敗下陣來,哈哈,自勉!大概需要BJarne Stroustrup這號人物出場才能鎮(zhèn)住面試官了。Anyway,實際工作中應(yīng)該用不到這么detail的對語言實現(xiàn)機(jī)制的了解,既然入了C++這個坑,那就只好努力,爭取早日可以虐菜。
通過領(lǐng)英拿到機(jī)會面試,一開始是一輪電話面試,過了之后會連著4面。注意面試時網(wǎng)絡(luò)環(huán)境的暢通,和面試的軟件。
面試官問的面試題:NVIDIA(英偉達(dá))C++軟件開發(fā)工程師面試題
比較簡單的問題就是基礎(chǔ)的c++的和數(shù)據(jù)結(jié)構(gòu),操作系統(tǒng),編譯原理的問題。
還有編程題:反轉(zhuǎn)二叉樹,斐波那契數(shù)列相關(guān)。
簡單問了下項目經(jīng)驗及換工作的原因,按實際情況答了下,然后問了幾個算法題,C++和算法題各一半,沒有認(rèn)真準(zhǔn)備答得不好
面試官問的面試題:NVIDIA(英偉達(dá))software engineer面試題
描述下C++多態(tài)的幾種實現(xiàn)形式?
struct互相嵌套怎么實現(xiàn)?
H264的skip模式是什么?
const和define的區(qū)別是什么?
NVIDIA(英偉達(dá))工資待遇 共3 條
NVIDIA(英偉達(dá))面試經(jīng)驗 共 29 條
(共8條) 北京風(fēng)行在線技術(shù)有限公司
(共4條) 小馬過河國際教育
(共8條) 上海中科新生命生物技術(shù)有限公司
(共5條) 合肥新滬屏蔽泵有限公司
(共6條) 上海壹佰米網(wǎng)絡(luò)科技有限公司
(共4條) 北京中普達(dá)技術(shù)有限公司