2018提前批 匯頂科技面經

2021-08-25 05:32:56 字數 1223 閱讀 8768

16號投了匯頂科技沒注意這是提前批,可能是簡歷過了17號就打**讓直接去面試,也來不及準備什麼。面試官很和藹,但是還是問了好多不會的。問題的方向偏底層原理一些,面試的崗位是windods c++開發。

1,自我介紹;

2,聊專案;

前兩個環節都還好,是自己熟悉的,講專案也基本講的清楚,中間涉及到的知識點自己要搞清楚原理了再說。

3,函式引數入棧了解過嗎?入棧的順序是怎麼樣的。  

4,模板的原理,c++為什麼能夠實現多型。

5,怎麼樣的介面是安全的,了解過嗎。

6,現場寫乙個安全的記憶體拷貝。

7,寫乙個單例模式。

下午一共兩面,形式差不多,一共面了快3個小時..... 

整理一下知識點。

從右到左的引數方式,原因是引數都是用壓棧方式實現的,使用從右到左的傳參方式,棧頂看到的就是左邊輸入的首引數,因此,無論怎樣的變長,都可以通過指標偏移的方式找到值。而從左到右的話,棧頂看到的是最後乙個引數,並不知道這個引數長度,那麼就無法通過指標偏移的方式找到首引數。

這裡

void foo(int x, int y, int z)

int main(int argc, char *argv)

執行結果是:

x = 100 at [...60]

y = 200 at [...64]

z = 300 at [...68]

這是由於,c程式棧的記憶體生長方式是往低位址記憶體生長,這也說明為什麼區域性變數無法申請太大記憶體,因為棧內容有限。此外,這個例子說明,函式引數的入棧的順序是從右往左的!

(1)定義:保證乙個類僅有乙個例項,同時提供能對該例項加以訪問的全域性訪問方法。

(2)解決思路:

①在類中,要構造乙個例項,就必須呼叫類的建構函式。如此,為了防止在外部呼叫類的建構函式而建立例項,需要將建構函式的訪問許可權設為protected或private;

②最後,需要提供全域性訪問點,就需要在類中定義乙個static函式,返回在類內部唯一構造的例項。

其中使用靜態變數在一開始就建立例項的做法被稱為餓漢式,特點是一開始就建立好了,每次呼叫的時候直接返回就好了。該方法多執行緒安全。

還有一種是懶漢式,用時間換取空間,採用乙個靜態變數來判斷該例項是否被建立過。為了使其多執行緒安全,可以使用互斥鎖等方式。

對於static修飾符的詳解這裡有一篇部落格:

京東提前批面經 轉

以上幾題參考文章 讀完文章總結一下就能回答。關於鎖 重入鎖實現可重入性原理或機制是 每乙個鎖關聯乙個執行緒持有者和計數器,當計數器為 0 時表示該鎖沒有被任何執行緒持有,那麼任何執行緒都可能獲得該鎖而呼叫相應的方法 當某一線程請求成功後,jvm會記下鎖的持有執行緒,並且將計數器置為 1 此時其它執行...

2021屆匯頂提前批 FPGA工程師崗位面經

面試在上週六上午九點,匯頂有三次面試,一面技術面,二面hr面,三面綜合面,都是在乙個上午面完的,面了一上午。在進行 面試之前沒有通知,下午直接打 過來問方不方便面試,由於下午不太方便,所以把時間調整到了晚上。面試主要也是問的技術相關。首先讓進行了自我介紹。然後讓簡單介紹自己的專案,主要的框架和結構都...

21屆中興IC提前批面經

面試過程中,面試官是兩個,上來就說讓簡單自我介紹下,從本科開始。我就巴拉介紹了下。然後讓說下,都做過哪些專案,我就說了自己做的幾個,都只是簡單說了下。然後讓講一下自己最熟悉的,重點來了一定要把專案看透徹,框架弄懂,最好仔細提前寫個文件,整理好語句多看幾遍自己就比較大意,然後感覺說的不是很好,邏輯性不...