原创 我們的腳印

 你沿着你畫的那條斜線, 走進了黃昏。 我在你的身後沿着你的腳印 默默地數着你走過的日子。 直到你那漸行漸遠的身影, 最後,縮成了一個點。 長大後,我真的成了你。 我學着你的模樣, 執起你送給我的教鞭, 握緊你交給我的粉筆, 還有那本你我

原创 引用的本質是什麼

在大學的時候,教材裏這麼說的“引用是個別名...引用作爲目標的別名而使用...引用不是值不佔存儲空間...引用只有聲明,沒有定義...” 那麼,引用到底佔不佔內存空間,引用的本質是什麼? 下面舉個例子: int a = 10; int

原创 sizeof與對象內存佈局《別太相信自己啊,最好自己運行一下》

  一 內置類型的size 內置類型,直接上代碼,幫助大家加深記憶: void TestBasicSizeOf() {    cout << __FUNCTION__ << endl;    cout << " sizeof(char)=

原创 void (C++)

When used as a function return type, the void keyword specifies that the function does not return a value. When used

原创 析構函數的淺談《原創》

顯式的調用析構函數是一件非常危險的事情,,我們自己所謂的顯式調用析構函數,實際上只是調用了一個成員函數,並沒有真正意義上的讓對象“析構”。爲了理解這個問題,我們必須首先弄明白“堆區”和“棧區”的概念。《具體的區別參加我的文章-《堆區和棧

原创 構造函數的返回值是*this &

直接點。構造函數的返回值是*this & 證明如下: Code: class xx   {   };   void func(xx oo)   {   }   int main()   {       func(xx());   }

原创 那麼喜歡犯賤?

現在的人們不知道是怎麼啦?城市的人抱怨城市的環境越來越差,有錢的不惜重金去幽靜的,風景秀麗的地方買房,建別墅。而農村的人們則不辭疲勞的不遠千里的從農村奔赴城市,有時候可能在城市過的生活遠不如自己在農村的生活好,儘管如此,也沒有回去的念頭。

原创 二叉樹

  二叉樹的實現[r1] (1) // FileName;BTNode.h //二叉樹類聲明頭文件  #ifndef BTNODE #define BTNODE// 表示二叉樹的節點 template <typename T> class

原创 KMP字符串模式匹配詳解

KMP字符串模式匹配通俗點說就是一種在一個字符串中定位另一個串的高效算法。簡單匹配算法的時間複雜度爲O(m*n);KMP匹配算法。可以證明它的時間複雜度爲O(m+n).。 一.  簡單匹配算法 先來看一個簡單匹配算法的函數: int I

原创 typedef用法小小結

 Typedef 聲明有助於創建平臺無關類型,甚至能隱藏複雜和難以理解的語法。不管怎樣,使用 typedef 能爲代碼帶來意想不到的好處,通過本文你可以學習用 typedef 避免缺欠,從而使代碼更健壯。        typedef 聲

原创 奇怪的const

概述 const在c++中意味着“不可改變”,但在有些情況下我們可以“合法”地繞過編譯器去修改一些const數據,比如const_cast就可以剝離一個對象的const屬性。然而,我們這樣做在多大程度上是“合理”的,卻因不同的問題而論,

原创 用遞歸中序遍歷二叉樹

Code: 用遞歸中序遍歷二叉樹   #include<stdlib.h>      struct tree                //聲明樹的結構   {        struct tree *left;        

原创 N皇后問題。

八皇后問題是一個古老而著名的問題,它是回溯算法的典型例題。該問題是十九世紀德國著名數學家高斯於1850年提出的:在8行8列的國際象棋棋盤上擺放着 八個皇后。若兩個皇后位於同一行、同一列或同一對角線上,則稱爲它們爲互相攻擊。在國際象棋

原创 什麼叫精通C++

  常用的面向對象複用模型設計、常用的數據結構設計、常用的操作系統知識、內存管理、多線程互斥,然後能夠很輕鬆的應用現有的軟件模塊和開發庫,比如用開源的庫(例如log4cpp),購買的其他公司的接口模塊等,能夠和容易上手應用一個你從

原创 遞歸中序遍歷二叉樹

用遞歸中序遍歷二叉樹 #include<stdlib.h> struct tree //聲明樹的結構 { struct tree *left; int data; struct