摘要: 我們可以用不同的整數(shù)來(lái)實(shí)例化同一個(gè)模板,從而構(gòu)造不同的類型,進(jìn)而在編譯期執(zhí)行某些抉擇。
閱讀全文
摘要: 關(guān)于virtual desctructor的詳細(xì)討論。同樣來(lái)自于《Effective C++》3rd Edition。
閱讀全文
摘要: 組件(Component)應(yīng)該是在現(xiàn)代軟件工程中,除了對(duì)象(Object)之外的第二個(gè)炙手可熱的詞了。然而,什么是一個(gè)組件?是一個(gè)某些邏輯集合的實(shí)現(xiàn)?還是一個(gè)承載這些實(shí)現(xiàn)的物理實(shí)體(例如DLL)?還是一個(gè)包括了邏輯實(shí)現(xiàn)、物理載體以及相關(guān)的類型信息、安全策略和版本信息的一個(gè)大而全的集合?也許你會(huì)說(shuō)任何一種解釋都是正確的。的確,不同的環(huán)境中,Component有著不同的含義,但是,在.NET中,我們就可以把一個(gè).NET Class當(dāng)作一個(gè)Component。
閱讀全文
摘要: 你可能經(jīng)常需要利用運(yùn)行時(shí)斷言技術(shù),它可以方便地測(cè)試前提條件。但是,隨著Metaprogramming概念的出現(xiàn),編譯時(shí)斷言技術(shù)也已經(jīng)和runtime assertion一樣的普遍了。如何在編譯時(shí)進(jìn)行斷言呢?其實(shí),方法只有一個(gè),就是讓編譯器生成一條錯(cuò)誤信息,但是編譯器生成的錯(cuò)誤信息信息性往往有又理想。并且,即使你在一種編譯上設(shè)計(jì)了一種方案,你也很難把它移植到其他的編譯器上。我們通過(guò)其實(shí)現(xiàn)方法的改進(jìn)和一個(gè)Boost中的例子,來(lái)看看如何更好的實(shí)現(xiàn)這種技術(shù)。
閱讀全文
摘要: 最近看了看C++/CLI specification。的確,C++/CLI讓C++在使用.NET的時(shí)候手感好了很多,一點(diǎn)學(xué)習(xí)小記,說(shuō)的不對(duì),各位多包涵。
閱讀全文