- C++類型轉(zhuǎn)換有哪些?
- C++虛函數(shù)的原理
- 智能指針有哪些?應(yīng)用場(chǎng)景?
- select, poll, epoll的原理、區(qū)別、優(yōu)缺點(diǎn)
- std::sort的底層實(shí)現(xiàn)
- lamda表達(dá)式的本質(zhì)?
- std::vector的size和capacity,擴(kuò)容機(jī)制
- 往std::vector中用push_back添加n個(gè)元素,總時(shí)間復(fù)雜度是多少?
- std::vector怎么縮容?
- C++的完美轉(zhuǎn)發(fā)是什么?
- 刪除和新增STL容器中的元素,迭代器會(huì)失效嗎?
- STL有哪些組件?
- 介紹一下仿函數(shù),它有什么作用?
- STL容器是線程安全的嗎?
- 類的深拷貝和淺拷貝
- 如何實(shí)現(xiàn)一個(gè)簡(jiǎn)單的“寫時(shí)拷貝”類?
- malloc和free是線程安全的嗎?
- 什么是靜態(tài)鏈接和動(dòng)態(tài)鏈接?分別是如何鏈接的?
- 程序運(yùn)行時(shí)內(nèi)存模型?
- std::unordered_map和std::map的底層實(shí)現(xiàn)?std::map元素有序嗎?
- std::unordered_map查詢的時(shí)間復(fù)雜度?什么時(shí)候退化成O(n)?怎么優(yōu)化?
- std::unordered_map的負(fù)載因子是什么?
- go有個(gè)關(guān)鍵字defer,用于在函數(shù)結(jié)束時(shí)自動(dòng)調(diào)用,C++如何實(shí)現(xiàn)類似功能?
- STL中的內(nèi)存分配器是怎么實(shí)現(xiàn)的?
- std::move是什么?怎么實(shí)現(xiàn)?std::forward是什么?怎么實(shí)現(xiàn)(參見C++ primer)
- auto和decltype的作用和區(qū)別?
- new和malloc區(qū)別?
- C++如何避免內(nèi)存泄漏?如何排查?
- 構(gòu)造函數(shù)和析構(gòu)函數(shù)可以定義為虛函數(shù)嗎?析構(gòu)函數(shù)什么時(shí)候需要定義為虛函數(shù)?
- 構(gòu)造函數(shù)和析構(gòu)函數(shù)可以拋出異常嗎?
- 構(gòu)造函數(shù)中能調(diào)用虛函數(shù)嗎?會(huì)發(fā)生多態(tài)嗎?
- 頻繁地申請(qǐng)和釋放堆區(qū)空間,有什么壞處?怎么解決?
- if else 語句和 switch 語句哪個(gè)性能更好?
- 以下代碼會(huì)發(fā)生什么?
struct Logger {
void log(const string &msg) {
cout << msg << endl;
}
}
int main() {
Logger *p = nullptr;
p->log("hello"); // 會(huì)發(fā)生空指針異常嗎?輸出什么?
}
#投票#