原创 一文說盡C++賦值運算符重載函數(operator=)

寫在前面:       關於C++的賦值運算符重載函數(operator=),網絡以及各種教材上都有很多介紹,但可惜的是,內容大多雷同且不全面。面對這一局面,在下在整合各種資源及融入個人理解的基礎上,整理出一篇較爲全面/詳盡的文章,以

原创 std::function與std::bind 函數指針

function模板類和bind模板函數,使用它們可以實現類似函數指針的功能,但卻卻比函數指針更加靈活,特別是函數指向類 的非靜態成員函數時。 std::function可以綁定到全局函數/類靜態成員函數(類靜態成員函數與全局函數沒有

原创 64位與32位編程的數據類型區別(C/C++)

C/C++僅僅定義了這些基本數據類型之間的關係,並沒有定義嚴格定義它們的字長。在不同的平臺上,根據編譯器不同的實現,它們的字長如下表所示: 數據類型 LP64 ILP64 LLP64 ILP32 LP32 ch

原创 Ildasm.exe(IL 反彙編程序)

IL 反彙編程序是 IL 彙編程序 (Ilasm.exe) 的配套工具。  Ildasm.exe 可利用包含中間語言 (IL) 代碼的可移植可執行 (PE) 文件,並創建適合輸入到 Ilasm.exe 的文本文件。 此工具會自動隨 V

原创 C/C++數據對齊

Data Alignment  關於數據對齊問題,現在多多少少有了一些接觸,簡單地說下自己的看法。 1、對齊的背景  大端和小端的問題有必要在這裏介紹一下,計算機裏面每個地址單元對應着一個字節,一個字節爲8bit,對於位數大

原创 C++中##(兩個井號)和#(一個井號)用法

C(和C++)中的宏(Macro)屬於編譯器預處理的範疇,屬於編譯期概念(而非運行期概念)。下面對常遇到的宏的使用問題做了簡單總結。關 於#和##在C語言的宏中,#的功能是將其後面的宏參數進行字符串化操作(Stringfication),

原创 block,inline和inline-block概念和區別

總體概念 block和inline這兩個概念是簡略的說法,完整確切的說應該是 block-level elements (塊級元素) 和 inline elements (內聯元素)。block元素通常被現實爲獨立的一塊,會單獨換一行;

原创 WPF 的 MVVM 的分析理解(一)

簡介 簡單的三層架構示例和 GLUE(膠水)代碼問題 第一步:最簡單的 MVVM 示例 - 把後臺代碼移到類中 第二步:添加綁定 - 消滅後臺代碼 第三步:添加執行動作和“INotifyPropertyChanged”接口 第四步:

原创 C++ typename的起源與用法

侯捷在Effective C++的中文版譯序中提到: C++的難學,還在於它提供了四種不同(但相輔相成)的程序設計思維模式:procedural-based, object-based, object-oriented, generi

原创 WPF 的 MVVM 的分析理解(二)

上面的 command 代碼中,ViewModel 對象是通過構造函數傳遞進來。所以 ViewModel 類需要創建一個 command 對象來暴露這個對象的“ICommand”接口。這個“ICommand”接口將被 WPF XAM

原创 Bat命令學習

基礎部分: ====================================================================== 一、基礎語法: 1.批處理文件是一個“.bat”結尾的文本文件,這個文件的

原创 Linux如何實現開機啓動程序詳解

Linux開機啓動程序詳解 我們假設大家已經熟悉其它操作系統的引導過程,瞭解硬件的自檢引導步驟,就只從Linux操作系統的引導加載程序(對個人電腦而言通常是LILO)開始,介紹Linux開機引導的步驟。加載內核LILO啓動之後,如果你選

原创 CSS塊級元素、內聯元素

在css盒子模型中,我們提到了html元素中的塊元素(block element)和內聯元素(inline element)。那麼它們究竟是什麼呢?      其實,這兩種元素都是html規範中的概念。塊元素(block e

原创 MinGW與Cygwin 的區別

MingW和cygwin的區別 ------------------------------------------------------------- 首先MingW和cygwin都可以用來跨平臺開發。   MinGW是Mini

原创 C++ function、bind以及lamda表達式

本文是C++0x系列的第四篇,主要是內容是C++0x中新增的lambda表達式, function對象和bind機制。之所以把這三塊放在一起講,是因爲這三塊之間有着非常密切的關係,通過對比學習,加深對這部分內容的理解。在開始之間,首先要