原创 C++中的資源管理

       C++中最重要, 也最令人頭疼的事情之一就是資源管理。原則上,每次在堆區用關鍵字new申請一塊內存,必須對應一個delete來釋放它。對應一般的小程序,通過細心地寫代碼,很容易做到。但當程序變大、變複雜的時候,僅僅依靠謹慎的

原创 【D3D11遊戲編程】學習筆記四:準備工作

       (注:【D3D11遊戲編程】學習筆記系列由CSDN作者BonChoix所寫,轉載請註明出處:http://blog.csdn.net/BonChoix,謝謝~)          現在可以開始接觸D3D了,但是在開始前,還有

原创 【D3D11遊戲編程】學習筆記二十五:法線映射(Normal Mapping)

       (注:【D3D11遊戲編程】學習筆記系列由CSDN作者BonChoix所寫,轉載請註明出處:http://blog.csdn.net/BonChoix,謝謝~)            1. 爲什麼使用法線映射?       

原创 【D3D11遊戲編程】學習筆記十八:模板緩衝區的使用、鏡子的實現

       (注:【D3D11遊戲編程】學習筆記系列由CSDN作者BonChoix所寫,轉載請註明出處:http://blog.csdn.net/BonChoix,謝謝~)         模板緩衝區(Stencil Buffer)是一

原创 【D3D11遊戲編程】學習筆記九:編譯Effect的方法

        (注:【D3D11遊戲編程】學習筆記系列由CSDN作者BonChoix所寫,轉載請註明出處:http://blog.csdn.net/BonChoix,謝謝~)       在D3D11應用程序中,對於寫好的Effect

原创 C++中的異常安全性

       一個函數如果說是“異常安全”的,必須同時滿足以下兩個條件:1.不泄漏任何資源;2.不允許破壞數據。 我們先通過兩個反面的例子開始。        第一個是造成資源泄漏的例子。一個類Type,內含一個互斥鎖成員 Mutex m

原创 C++中的函數對象(Function Object)(二)

       除了自定義的函數對象,標準庫還爲我們提供了一系列現成的函數對象, 比如常見的數學、邏輯運算等。例如:negate<type>(),pl

原创 Lua函數的多個返回值

       Lua中的函數的一個很特殊也很有用的性質,即可以有多個返回值。包括一些內置的函數就是這樣。比如string.find函數,在給定的字符

原创 用const、enum、inline替代#define

       在C語言程序設計中,define被大量地使用,用來定義常量或者宏,以減少代碼重複及提高可維護性。但在C++中,引進了const、enum、inline後,大多數使用define的地方都可以用它們來代替(當然#ifndef、#

原创 C++迭代器之'反向迭代器'

       反向迭代器(Reverse Iterator)是普通迭代器的適配器,通過重新定義自增和自減操作,以達到按反序遍歷元素的目的。如果在標準算法庫中用反向迭代器來代替普通的迭代器,那麼運行結果與正常情況下相反。除此之外,其用法與普

原创 C++中的函數對象(Function Object)(一)

       一個函數對象,即一個重載了括號操作符“()”的對象。當用該對象調用此操作符時,其表現形式如同普通函數調用一般,因此取名叫函數對象。舉個

原创 C++迭代器之'插入迭代器'

       插入迭代器(Insert Iterator),又叫插入器(Inserter),是繼上次的反向迭代器之後C++中的又一個迭代器適配器。插入迭代器的主要功能爲把一個賦值操作轉換爲把相應的值插入容器的操作。插入迭代器對標準算法庫而

原创 【D3D11遊戲編程】學習筆記三:XNAMath之XMMATRIX

       (注:【D3D11遊戲編程】學習筆記系列由CSDN作者BonChoix所寫,轉載請註明出處:http://blog.csdn.net/BonChoix,謝謝~)          在熟悉了XMVECTOR的風格及規則之後,再

原创 【D3D11遊戲編程】學習筆記二:XNAMath之XMVECTOR

       (注:【D3D11遊戲編程】學習筆記系列由CSDN作者BonChoix所寫,轉載請註明出處:http://blog.csdn.net/BonChoix,謝謝~)          一、XNA Math簡介        在D

原创 【D3D11遊戲編程】學習筆記一:最新版D3D11龍書

       (注:【D3D11遊戲編程】學習筆記系列由CSDN作者BonChoix所寫,轉載請註明出處:http://blog.csdn.net/BonChoix,謝謝~)          前一段時間破費從美國Amazon上買到了一直