原创 CppUnit初識

  概述:         軟件測試驅動開發(TDD)是以測試作爲開發過程的中心,它堅持,在編寫實際代碼之前,先寫好基於產品代碼的測試代碼。開發過程

原创 內存管理之智能指針一:stl中的auto_ptr智能指針

 一、智能指針作爲一種內存管理技術主要爲了解決什麼問題?(屬於個人理解) 1、一般在應用軟件的開發過程中,應用程序的代碼執行基本上都是通過以下幾個步驟來完成: (1)獲取資源(內存、文件句柄、數據庫連接等); (2)執行功能代碼; (3)

原创 CppUnit測試框架中的異常判斷宏

TestAssert (名字空間中Assert函數集合) 說明: 在CppUnit的名字空間中的全局的判定(Assert)函數,提供了多樣的判斷方法。 預定義宏: (1)  CPPUNIT_ASSERT(condition) 測試目的:

原创 smart_ptr學習之scoped_ptr

 類如其名:scoped_ptr,僅僅只在自己的作用域內纔可以使用,出了自己的作用域就自動進行析構。 不同於auto_ptr,不支持所有權的轉移,同時把自己的拷貝構造函數、賦值操作符等相關的成員函數設定爲私有函數,更進一步的“鞏固”了“一

原创 CppUnit部分核心代碼分析之AdditionalMessage

AdditionalMessage (異常信息對象,只包含詳細信息) 說明: 屬於Message類得子類,不對簡短信息進行構造,只構造詳細信息,類似於一個特例,把Message的包含兩個參數的構造函數轉化爲了只需要一個參數(詳細信息)的構

原创 shared_ptr使用注意事項

羅列出在使用智能指針的時候可能會犯的一些錯誤: 條款1:不要把一個原生指針給多個shared_ptr管理 int* ptr = new int; shared_ptr<int> p1(ptr); shared_ptr<int> p2(pt

原创 CppUnit測試框架使用筆記一

對新框架的學習,一種比較自然的方法就是直接使用,看到運行結果,跟蹤運行過程,瞭解框架的運行流程。就像學習各種編程語言一樣,每本書上來都是“Hello world“,那麼我的學習過程也是以直接使用框架開始。 1、編譯CppUnit框架,獲得

原创 CppUnit部分核心代碼分析之Message

Message(異常信息對象) 說明: 對於異常(Exception)產生時候的一些信息說明。 預定義宏: 類設計詳解: 類名: classCPPUNIT_API Message 類圖: 成員變量: private:   std::

原创 雙緩衝區實現

#include <iostream> #include <boost/thread.hpp> #include <boost/interprocess/sync/interprocess_semaphore.hpp> using na

原创 CppUnit中測試框架的核心組件類圖結構

(1)測試用例的基本類圖結構 整個測試用例的基本組合模式採用了“設計模式”中的經典模式-Composite(組合)的結構性模式,使得用戶在基於接口的編程過程中具有很大的透明性。 明確如下幾個概念: 測試用例:是指單個的測試用例,比如測

原创 CppUnit部分核心代碼之SynchronizedObject(同步對象,支持多線程)

SynchronizedObject (同步對象,支持多線程) 說明: 使得CppUnit測試框架支持多線程,在實現的過程中主要使用了RIIA的思想,如果單個的測試類需要支持多線程,就需要派生自該類,設置相關的同步機制。 預定義宏: 在實

原创 CppUnit部分核心代碼之Exception

Exception (異常對象) 說明: CppUnit測試框架中的基礎異常類,繼承於標準C++的exception,主要是捕獲當assertion失敗時候的異常,在CppUnit框架中異常分爲三種:異常、失敗、錯誤(爲未知的異常)。出現

原创 A Complete ActiveX Web Control Tutorial

A Complete ActiveX Web Control Tutorial Introduction ActiveX is a Microsoft technology developed in the mid

原创 Building ActiveX servers in Qt

A Windows-only static library for turning a Qt binary into a COM server. The QAxServer module is part of the ActiveQ

原创 tcp協議的那些事

無論是PC客戶端開發還是移動開發,或是Web開發, 網絡編程都是很重要的一塊, 深入理解TCP/IP和HTTP協議是一個優秀程序員的必備技能。看到酷殼老大正好寫了篇相關文章, 正好拿來學習, 轉自 http://coolshell.cn