原创 博客遷移 https://vonsdite.cn/

博客遷移 https://vonsdite.cn/ https://vonsdite.github.io https://vonsdite.coding.me 博客遷移 https://vonsdite.cn/ https://vonsd

原创 博客遷移 https://vonsdite.github.io/

博客停止更新, 轉到: https://vonsdite.github.io/ 博客停止更新, 轉到: https://vonsdite.github.io/ 博客停止更新, 轉到: https://vonsdite.github.i

原创 dp動態規劃分類詳解

動態規劃一直是ACM競賽中的重點,同時又是難點,因爲該算法時間效率高,代碼量少,多元性強,主要考察思維能力、建模抽象能力、靈活度。 *****************************************************

原创 性能測試工具VTune

1. VTune介紹 VTune性能分析器能通過以下的手段發現和定位程序中的性能問題 2. VTune的使用 I. 新建工程 II. 選擇要分析的目標文件 III. 新建分析類型 3. 分析性能類型的介紹 ① Algorith

原创 vs2017 企業版和專業版的註冊碼

Visual Studio 2017(VS2017) 企業版 Enterprise 註冊碼:NJVYC-BMHX2-G77MM-4XJMR-6Q8QF Visual Studio 2017(VS2017) 專業版 Professiona

原创 C++中虛析構函數的作用

   我們知道,用C++開發的時候,用來做基類的類的析構函數一般都是虛函數。可是,爲什麼要這樣做呢?下面用一個小例子來說明:         有下面的兩個類: class ClxBase {public:     ClxBase() {}

原创 進程間常見通信方式

多進程: 首先,先來講一下fork之後,發生了什麼事情。 由fork創建的新進程被稱爲子進程(child process)。該函數被調用一次,但返回兩次。兩次返回的區別是子進程的返回值是0,而父進程的返回值則是新進程(子進程)的進程 id

原创 linux-malloc底層實現原理

本文大致講解一下linux下malloc的底層實現原理。 首先malloc肯定是從堆中分配內存,而堆又在用戶空間中佔據什麼位置?通過下面這張圖可以看出來: 很明顯是32位系統,尋址空間是4G,linux系統下0-3G是用戶模式,3-4

原创 C++拷貝構造函數(深拷貝,淺拷貝)

1. 拷貝構造函數 2. 舉例 ① 調用拷貝構造函數的情況 3. 淺拷貝和深拷貝 ps: 深拷貝和淺拷貝體現在類中,當類中有指針變量時,涉及到動態開闢堆內存,如果是淺拷貝,淺拷貝的類中指針變量指向同一塊空間,當其中一個對象析構時,

原创 C++繼承中重載、重寫、重定義的區別

重載overload:是函數名相同,參數列表不同 重載只是在類的內部存在。但是不能靠返回類型來判斷。 重寫override:也叫做覆蓋。子類重新定義父類中有相同名稱和參數的虛函數。函數特徵相同。但是具體實現不同,主要是在繼承關係中出現的 

原创 作業 -> 【Windows核心編程(第五版)】

作業 Windows提供了一個作業內核對象, 允許我們將進程組合在一起並創建一個“沙箱”來限制進程能做什麼. // 驗證進程是否在一個作業控制下運行 BOOL IsProcessInJob(HANDLE hProcess, HANDLE

原创 TCP三次握手的思考,爲什麼要有三次握手

    大家都知道TCP有三次握手的過程,今天我就仔細想了想爲什麼TCP要有三次握手     先貼一張三次握手的示意圖,說明一點是在三次握手中A是在第二次握手後申請緩存資源,B是在第一次握手後申請     其實這個問題就是說,爲什麼t

原创 字節序->大端法和小端法

什麼是大端法和小端法? 在幾乎所有的機器上,多字節對象都被存儲爲連續的字節序列,對象的地址爲所使用字節中的最小地址。 例如,假設一個類型爲int的變量x的地址爲0x100,即&x的值爲0x100。那麼x的4個字節將被存儲在 存儲器的0x

原创 C++內存分配方式詳解(堆、棧、自由存儲區、全局/靜態存儲區和常量存儲區)

一、數據結構中的棧和堆 堆和棧都是一種數據項按序排列的數據結構。 棧:就像裝數據的桶或箱子,它是一種具有後進先出性質的數據結構。 堆:一種經過排序的樹形數據結構,每個結點都有一個值。通常我們所說的堆的數據結構,是指二叉堆。堆的特點是根結點

原创 Vtune HotSpots(熱點)使用

軟件 tachyon_vtune_amp_xe HotSpots(熱點)的使用 1. 項目屬性要求 2. 點擊New Analysis 3. 創建熱點 4. Start 程序運行結束後 I. Summary Bottom-Up 使用c