由於疫情的原因,這次的面試還是遠程視頻面試,通過牛客網進行的,可以在線敲代碼和看筆試題目。在我剛來廣州的時候, 就聽過歡聚時代(yy),主要是做直播方向的,記得高中的時候,還用過他們的yy遊戲大廳什麼的下過dnf的外掛,哈哈哈。
1、說一下c++中結構體和類的區別
回答:1、默認訪問屬性的區別,struct成員默認是public,class成員默認是private
2、c++結構體的繼承默認是public,而class的繼承默認是private
2、c++中結構體可以有成員函數麼,結構體可以被繼承麼
回答:在c++中可以有成員函數,並且是可以被繼承的。
3、既然c++中結構體可以被繼承,那結構體可以實現多態麼。
回答:可以,在c++中,其實struct和class除了默認的屬性不同外,其他的基本一致。
4、說一下c++的多態
回答:c++多態表示子類對象的地址可以賦值給父類指針。對於通過父類指針調用父類和子類中都有的同名接口,編譯器會在運行期間進行動態綁定。如果父類指針指向的是一個父類對象,則父類的虛函數被調用,如果父類指針指向的是一個子類對象,則子類的虛函數被調用。
5、char *p=NULL;sizeof(p)是多少?
回答:4
6、說一下以下A結構體的大小,爲什麼?
代碼如下:
struct A{
char a;
int b;
};
回答:大小是8、因爲int在32位下佔4個字節,該結構體的最大字節是4,然後因爲內存對齊的原因,char雖然只佔據1個字節,但是需要往後偏移3個字節,所以是8。
7、請在網頁上手寫單鏈表的構造、插入、打印、非遞歸逆序過程,並輸出。
說實話,被人盯着寫代碼還是有點不習慣,比較緊張,生怕自己打錯被鄙視。
代碼鏈接:https://blog.csdn.net/c_shell_python/article/details/84850048
寫完單鏈表的整個過程後,本次面試就結束了。
這裏強調一下,面試中寫代碼也要嚴謹,因爲我偷懶,沒有寫相應的指針是否爲NULL判斷,被面試官批了。還是要注意細節,不僅僅是實現功能,更要注意代碼的健壯性。
其實一二線大廠還是很注重基礎的。單鏈表很多公司都會考到,因爲單鏈表考察了面試者對指針的掌握程度,以及逆序時邏輯是否清晰。如果去面試,單鏈表相關的題目建議必須要弄清楚,保證被問到,或者要求寫出來的時候不被卡主。