原创 c++設計模式之工廠模式入門篇

設計模式簡介   設計模式爲開發人員提供一種使用專家設計經驗的有效途徑。設計模式中運用了面向對象編程語言的重要特徵:封裝、繼承、多態等。   常見的設計模式主要有:工廠模式、策略模式、適配器模式、單例模式、原型模式、模板方法模式

原创 C++單向鏈表之創建、插入、刪除、查找、交換鏈表節點

鏈表:    鏈表是一種物理存儲單元上非連續、非順序的存儲結構,數據元素的邏輯順序是通過鏈表中的指針鏈接次序實現的。鏈表由一系列結點組成,結點可以在運行時動態生成。每個結點包括兩個部分:一個是存儲數據元素的數據域,另一個是存儲下

原创 淺談c++之面向對象程序設計的幾種小技巧系列之第一部分--(boolan)

  既然說是淺談C++之面向程序設計,那麼本次我會和大家分享面向對象設計中經常使用的幾種類型:1.conversion function(轉換函數)、2.non-explicit-one-argument-ctor、3.explicit-

原创 簡述容器之rb_tree及其應用--(boolan)

概述:   Red-Black tree(紅黑樹)是平衡二分搜尋樹(balanced binary search tree)中常被使用的一種平衡二分搜尋樹的特徵:排列規則有利於search和insert,並保持適度平衡————無任何結

原创 C++的類(class)中帶有指針(*)--(Boolan)

大家都知道C++是從早期的C語言逐漸發展演變而來的,對於指針(*)並不陌生。那麼對於在C++的class中如果引入指針,那麼該如何處理。下面通過對字符串類(class STRing{...};)的代碼講解來進行說明。 設計字符串類的時候,

原创 淺談c++之指針型函數與函數指針

  對於初入C/C++殿堂的人來說,當聽到指針型函數與函數指針兩個名詞時有可能會在潛意思中認爲,他們是同一個東西。但是事實並非如此。   函數指針與指針函數他們其實是兩個不同的東西,對於函數的表達形式我們知道是:   返回類型 函數

原创 C++基於對象與面向對象(一)(Boolan)

對於學習C++的同學們來說,知道C++語言是C語言的繼承,但是又區別與C語言。既可以進行C語言的過程化程序設計,又可以進行以抽象數據類型爲特點的基於對象的程序設計,以及面向對象的程序設計,C++擅長於面向對象的程序設計。 簡單的說明下基於

原创 c++設計模式與面向對象之橋模式

  重新認識面向對象   對象是什麼?   從語言實現層面來看,對象分裝了代碼和數據;從規格層面講,對象是一系列可被使用的公共接口;從概念層面講,對象是某種擁有責任的抽象。   從宏觀層面來看,面向對象的構建方式更能適應軟件的變

原创 c++面向對象之複合(composition)、委託(delegation)、繼承(inheritance)--(boolan)

C++之面向對象   我們知道C++是C語言的升級版,C++保留了C語言原有的所有優點,並增加了面向對象(OO)的機制,C++最重要的一個概念就是“類”,有了類就有了面向對象的程序設計(OOP),類(class)是C++的核心。而所謂面向

原创 c++之關鍵字static

關鍵字—static 雖然名稱爲static,但實際上它一點都不安靜。 static這個關鍵字的作用有兩個,一個是修飾變量,一個是修飾函數。 [ 1 ] .static修飾變量: 變量又分爲局部變量和全局變量,但他們都存在內存的

原创 c++之容器(boolan)

   簡述: C++標準庫中的代碼幾乎都是使用泛型編程(GP),而所謂的泛型編程:就是使用tmeplate爲主要工具來編寫程序。   C++標準庫( C++ standard library )   對於STL標準模板庫而言,s

原创 c++中new與delete的重載--(boolan)

  對於有一定編程基礎的人來說,new與delete一定會非常的熟悉,知道在使用的過程中:new 先分配memory(內存)再調用ctor(構造函數);而delete是先調用dtor(析構函數)再釋放memory。 int * p=ne

原创 c++對象模型之vptr(虛指針)和vtbl(虛表)淺析——(boolan)

  對於學習C++來說,類是一個非常重要的東西,對於面向對象的程序設計,又會設計到類的繼承,委託,複合等。對於在類的繼承中大多數人都會知道類在完成繼承操作時的結果如何,但是如果問他,類在繼承的過程中他的內存是如何實現管理的,相信許多人都不

原创 c++設計模式之工廠模式

設計模式簡介   設計模式爲開發人員提供一種使用專家設計經驗的有效途徑。設計模式中運用了面向對象編程語言的重要特徵:封裝、繼承、多態等。   常見的設計模式主要有:工廠模式、策略模式、適配器模式、單例模式、原型模式、模板方法模式、建

原创 c++中迭代器與幾種簡單的算法

從語言的層次:   容器Container是個class template;   算法Algorithm是個function template;   迭代器Iterator是個class template;   仿函數Fun