現(xiàn)代計算機之父馮諾伊曼最先提出程序存儲的思想,并成功將其運用在計算機的設(shè)計之中,該思想約定了用二進制進行計算和存儲,還定義計算機基本結(jié)構(gòu)為 5 個部分。
大家都知道,現(xiàn)在互聯(lián)網(wǎng)公司面試,只要是研發(fā)崗位,基本是跑不了算法題伺候的,所以大家準備校招、社招,或者平時空閑的時候,都可以刷刷 LeetCode,保持手感。
訪問者模式將有關(guān)的行為集中到一個訪問者對象中,而不是分散到一個個的節(jié)點類中。
所有的應(yīng)用程序都需要存儲和檢索信息。進程運行時,它能夠在自己的存儲空間內(nèi)存儲一定量的信息。然而,存儲容量受虛擬地址空間大小的限制。
以前寫過一篇關(guān)于回調(diào)函數(shù)的文章C語言函數(shù)指針之回調(diào)函數(shù),今天又安排了一篇。
規(guī)則并不是完美的,通過禁止在特定情況下有用的特性,可能會對代碼實現(xiàn)造成影響。
如果問C語言中最重要、威力最大的概念是什么,答案必將是指針!威力大,意味著使用方便、高效,同時也意味著語法復(fù)雜、容易出錯。
說到 C++ 的內(nèi)存管理,我們可能會想到??臻g的本地變量、堆上通過 new 動態(tài)分配的變量以及全局命名空間的變量等,這些變量的分配位置都是由系統(tǒng)來控制管理的。
選擇一種合適的數(shù)據(jù)結(jié)構(gòu)很重要,如果在一堆隨機存放的數(shù)中使用了大量的插入和刪除指令,那使用鏈表要快得多。數(shù)組與指針語句具有十分密切的關(guān)系,一般來說,指針比較靈活簡潔,而數(shù)組則比較直觀,容易理解。對于大部分的編譯器,使用指針比使用數(shù)組生成的代碼更短,執(zhí)行效率更高。
當你調(diào)用 new 和 delete 時編譯器底層到底做了哪些工作?STL 各大容器底層空間配置原理是怎樣的?STL 空間配置器到底要考慮什么?什么是內(nèi)存的配置和釋放?
今天跟大家聊一下 BAT 面試 C++ 開發(fā)工程師必問的一個考點:智能指針。