原创 自動過濾選擇的組合框

經過兩天的編碼調試,完成了一個自動過濾選擇的組合框,具有以下優點:1。絲毫不妨礙組合框原有的功能2。根據用戶在編輯框裏已經輸入的單詞,從組合框的列表選項過濾出匹配的項,並使用下拉列表顯示出來以供用戶選擇。3。不需要特別的設置。從View

原创 無奈的boss

最近boss性質來了,又寫了不少代碼,問題一堆,他自己不會解決,讓我解決。總體說來,問題來自兩個方面: Debug版查找效率——因爲Debug實在跑不動 Release版找BUG——因爲Debug版BUG不出 我已經陷入崩潰的邊沿了,顛覆

原创 內存管理源代碼

  看到我的《評C/C++實戰之內存管理》(http://www.csdn.net/develop/read_article.asp?id=11385)有8xx點的人氣,感到非常的欣慰。應網友的要求,現將源代碼貼上如下 這些代碼實現了以下

原创 如何模擬《WORD》的窗口形式

如何模擬《WORD》的窗口形式 重點:在CChildFrame上做文章。 1、利用嚮導生成一個多文檔應用程序 TestMDI,則生成下列類: CAboutDlg,CChildFrame,CMainFrame,CTestMDIApp,CTe

原创 GC實現

//垃圾回收設想//回收策略,內存整理和多線程問題暫不考慮//必要的限制://1、所有具備垃圾回收功能的類都必須派生自gcBase//2、只能通過gcPtr和gcSPtr來訪問gcBase(和派生類),//    也就是說,直接申明gc

原创 評C/C++實戰之內存管理

C/C++實戰之內存管理      關鍵字:C++,內存分配,系統   貼文時間  2001-11-11 21:23:47  原作 Paul_Ni  歡迎大家來到這片大多數程序員都心有餘悸的雷區。本世紀偉大的比爾·蓋茨曾經失言: 640

原创 希望AMD和ATI趕緊倒掉

近日流年不利,被CPU和顯卡的兼容問題折騰得人都老了.先是 AddressU = Wrap; AddressV = Wrap; 出問題.在ATI的已知的顯卡上,當圖片的尺寸不是二的冪次方的時候,效果跟Clamp模式一樣.想起野豬跟我說的A

原创 for循環寫法帶來的效率差異

應同事需要,對接手的3D模塊做了此性能測試,發現vector<>::size()的獨佔時間居然高踞十大。查看代碼後發現,幾乎所有的for循環都是類似如下寫法: for(size_t i=0; i<vector<>.size(); i++)

原创 插值

我看了不少插值的方法,有的方法講得莫名其妙,一個程序,一些係數,爲什麼這個係數是1,而不是0.5從來不講,讓人很懷疑其可用性。 後來做刀光的時候,採集的刀光的點不夠圓滑,需要用到插值——想想自己的高數還沒有完全忘光,乾脆自己推導一個得了。

原创 ATI和NVidia在處理D3DRS_LASTPIXEL的差異

ATI忠實的實現了D3DRS_LASTPIXEL,NVidia則沒有。所以,最好的做法就是,永遠保持D3DRS_LASTPIXEL爲FALSE,方能在

原创 GPU與粒子

        事情起因是這樣的:很久很久以前,前離職同事留下一套完備的粒子系統,boss不滿意 ,要找人重新寫之。        先說說前同事的粒子系統:一套通用的粒子系統,發射器/效果器/渲染器/粒子池,兼顧2D和3D粒子,實現得相當

原创 C++0x:如何獲取lambda表達式的返回類型

最近看了老趙的博文,意識到lambda不僅僅提供了一個仿函數的語法糖,而在於能封裝環境變量,從而更輕鬆的實現異步函數調用. 之前利用模板實現過異步函數調用,因爲VS2008以前的C++不支持variadic templates和lambd

原创 緩存與效率

        在CPU多核的今天,考慮如何利用多核的問題已經擺在了每個程序員的面前。對一個稍微有點經驗的程序員而言,OMP無疑是最快的捷徑,並且收效非常高,基本能提升1.8倍的效率(雙核CPU)。         耐着性子把OMP的介紹

原创 利用模板實例化解決LNK2022錯誤.

諸如這樣的問題 http://social.msdn.microsoft.com/Forums/ar-SA/vcgeneral/thread/a4490504-956f-44d0-a39c-3a4bd36a4aac I have the

原创 WM_MOUSEWHEEL在多屏下的BUG

操作系統:Windows7   MSDN是這樣描述WM_MOUSEWHEEL的lParam參數的. lParam The low-order word specifies the x-coordinate of the pointer,