Time of Update: 2018-12-03
今天正在做一個項目,進展順利,但是編譯成RELEASE版本運行卻發現錯誤.自己弄了半天也沒搞定.但最後還是看了一篇文章解決了.主要原因是因為DEBUG和RELEASE在解決函數掉用上的方式的不同.DEBUG是通過EBP來間接實現的.就象這樣EBP+2 EBP+4 但在RELEASE下最佳化會省略 EBP 棧基址指標,這樣通過一個全域指標訪問棧.這樣如果調用和實現方式不同就會使返回地址產生錯誤.比如我調用的是發送一個訊息::PostMessage(GetParent()->m_hWnd ,
Time of Update: 2018-12-03
今天項目做到一半,發現代碼已經很多了,總想著能不能在某些地方省略一些.於是發現到自己從控制項派生出的幾個類.我用他們動態建立出DIALOG中的元素.這樣做是很麻煩,但沒辦法,因為希望自己的作品能夠更出色,於是就這麼做了.因為我實在沒有找到一個更好的解決辦法,也許是有,只是我不會.但隨之而來的並不是定義時參數的煩瑣,而是想要擷取他們自己的通知時間.例如從CLISTCTRL中派生的空間,想要響應它自己的LVN_ITEMCHANGED訊息怎麼搞定哪,最後終於成功了.其實很簡單.就是在要捕獲訊息的類中的
Time of Update: 2018-12-03
前幾天遇到一個DEBUG運行正常,REALESE出錯的情況,寫了篇BLOG,感覺自己都懂了,今天在項目中還是自訂訊息,居然又出錯了。今天再次搞定,並加深了對其的認識。這次出錯是想響應一個自己動態建立的CLISTCTRL的ITEMCHANGED訊息。自己寫了訊息影射,DEBUG運行完全正確。當我晚上在REALESE上啟動並執行時候發現錯誤。想都沒想,一定還是原型的錯誤。其實原型所帶的參數CSDN中並不是很全,簡單的辦法也是我這次解決問題的辦法,直接產生一個工程在一個對話方塊中放上一個你想要的控制
Time of Update: 2018-12-03
這幾天一直在看上海體育頻道的專題片《G錄姚明》。很過癮!經常會看到姚明在打球之餘參加社區公益活動,或到學校,或到其他的場所。姚明在用他的一言一行影響著他周圍的人。一方面,大家可以親密接觸球星,另一方面,人們從球星的身上受到鼓勵。這讓我想起在國內,這樣類似的公益活動也有,但是非常少。是姚明們素質比國內的球星、歌星們高很多嗎?不是的!是我們國內還沒有去充分的發掘球星、歌星的這種資源。缺少這種牽線搭橋的人和組織。我們看港台娛樂新聞的時候,也會經常看到歌星們參加各種公益活動。他們就比我們做得好。希望在內
Time of Update: 2018-12-03
What is pair programming?Two programmers working side-by-side, collaborating on the same design, algorithm, code or test. One programmer, the driver, has control of the keyboard/mouse and actively implements the program. The other programmer, the
Time of Update: 2018-12-03
好文,收藏學習。感謝作者林星。作者簡介:林星,辰訊軟體工作室專案管理組資深專案經理,有多年項目實施經驗。辰訊軟體工作室致力於先進軟體思想、軟體技術的應用,主要的研究方向在於軟體過程思想、Linux叢集技術、OO技術和軟體工廠模式。您可以通過電子郵件 iamlinx@21cn.com 和他聯絡。敏捷思維- 架構設計中的方法學(1)敏捷思維- 架構設計中的方法學(2)敏捷思維- 架構設計中的方法學(3)敏捷思維- 架構設計中的方法學(4)敏捷思維- 架構設計中的方法學(5)敏捷思維-
Time of Update: 2018-12-03
boost 的檔案對應的使用非常簡單兩個類就搞定了。file_mapping mapped_region但當映射的region和檔案大小一樣時,當檔案大於1g時 產生異常,此時只能分段對應檔才能避免以上問題。region的粒度由獲得 std::size_t page_size = mapped_region::get_page_size();2:向region中寫入資料,讀出資料時應小心如下面的執行個體中/**NOTIC*/部分樣本:// testboostmapregion.cpp :
Time of Update: 2018-12-03
以下是三個va宏。va宏的具體文檔將資源下載 名稱 :VA_宏協助文檔將要注釋的類名拷貝。 將游標放到空白處從va工具列中選中該宏名即可///////////////////////////////////////////////////////////////////////////////類名 :$clipboard$///基類 :$BaseClassName=KLObject$///命名空間 :KLSeis::KLData::DataModel///作者 :ryy///建立時間 :
Time of Update: 2018-12-03
今天開始讀《測試驅動開發實用指南(影印版)》裡的例子。打算邊讀邊把裡邊的例子用C++寫一遍。在《Test-Driven Development-A Practical Guide》書中的影片管理例子中,作者列出了10個User Story:1) Movie List2) Movies Can Be Renamed3) Movies Are Unique4) Rattings5) Categories6) Filter on Category7) Persistence8) Sorting9)
Time of Update: 2018-12-03
大有和天成從小生活在一個村,一起上的小學。大有從小頑皮,不好好讀書,16歲初中沒畢業離開了學校;天成自幼好學,成績優秀,16歲考上全市最好的高中。 1.大有每天在村裡晃悠,爹媽看著發愁,心想這孩子將來咋辦呀;天成每日刻苦讀書,父母喜在心裡,村裡人都認定他必有出息。 2.那年,大有和天成都19歲,大有跟著村裡的外出打工,來到了告訴公路工地,保底工資三千塊;天成考上了一所重點大學,讀的是道路和橋樑專業,學費每年五千多。 3.那年,大有和天成都23歲,
Time of Update: 2018-12-03
你能想象使用封閉原始碼的私人編譯器編譯自由軟體嗎?你怎麼知道編譯器在你的可執行檔中加入了什嗎?可能會加入各種後門和木馬。Ken Thompson是一個著名的駭客,他編寫了一個編譯器,當編譯器編譯自己時,就在'login'程式中留下後門和永久的木馬。幸運的是,我們有了gcc。當你進行 configure; make; make install 時,
Time of Update: 2018-12-03
邊界類和控制類的定義邊界類定義: * Intermediate the interface to something outside the system* Several Type-- User Interface classes-- System Interface classes-- Device interface classes* One boundary class per actor/use case pair(每一對Actor/Use Case就有一個邊界類) 控制類定義: *
Time of Update: 2018-12-03
使用測試優先方法開發使用者介面Author: Cpluser Website:http://www.enjoyimage.comEmail:enjoyimage@163.com.comBlog:http://blog.csdn.net/cpluser/示範代碼下載關鍵字:測試優先 測試驅動開發 Mock Objects CppUnit 1、概述測試優先是測試驅動開發(Test-Driven Development,
Time of Update: 2018-12-03
資料, 資訊, 邏輯 的關係 資料本身是無意義的, 在一定的情境下,要經過邏輯加工才有意義, 這裡, 我把意義就當作資訊, 由此可見, 資訊離不開資料,情境, 邏輯三個基本要素.情境是平台,是前提, 若以情境為參照系, 則資料和邏輯分別是平台中的靜和動的兩個要素.符號表示:資料相同 取1, 不同取0;邏輯相同 取1, 不同取0;資訊相同 取1, 不同取0; 何謂邏輯, 邏輯是資料加工的過程, 有重複性, 本質特徵是: 相同 資料 經過 相同 邏輯 產生 相同 資訊 (111)
Time of Update: 2018-12-03
李維的經典話語李維語一 不會用“設計模式”(design patterns)的程式員是低層次的軟體人才,他們只會寫code罷了。李維語二
Time of Update: 2018-12-03
最樸素的編程思想就是PO, 演算法操作資料,為了更好地操作資料, 利用資料結構組織資料.OO是來源與PO的, 基於PO的. 永遠也脫離不了PO.用OO能比PO更容易描繪需求, 分析問題, 設計實現方案. 在OO的思想中, 一切都可以是對象. PO中的資料可以是對象, 演算法可以是對象, 演算法和資料的封裝也可以是對象. 對象按有沒有主動能力分為 主動對象和被動對象.主動對象無非就是帶了一個或者多個執行流(也即線程). 對象可大可小:小到一個int變數(被動對象),
Time of Update: 2018-12-03
慎用CListCtrl::SetItemData()案例下載近日在使用MFC裡的CListCtrl時,遇到一個奇怪的現象。當往一個ListCtrl插入一個item時,我希望每個item都能綁定一個指向資料的指標。要實現這一要求有很多的方法。我使用了其中的兩種。第一種方法:int InsertItem(UINT nMask, int nItem, LPCTSTR lpszItem, UINT nState, UINT nStateMask, int
Time of Update: 2018-12-03
可欣動態串連庫最大的特點就是能節省磁碟空間.當多個進程共用同一個DLL的時候,記憶體中只有一個DLL的代碼.通過映射來使各個進程得以調用.1.用VC建立一個WIN32 DLL我們利用VC編寫DLL有幾種方法.如果用VC建立一個WIN32 DLL 工程.那這個工程就應該只匯出C++的類或全域變數.和全域函數.方法就是在CPP檔案中編寫你的代碼,為每個需要匯出的元素進行匯出辦法是增加如下語句:_declspec(dllexport) 你當然可以把它定義成宏例如,如果是一個類STUDENT需要匯出,
Time of Update: 2018-12-03
61條物件導向設計的經驗原則摘抄自《OOD 啟思錄》--Arthur J.Riel 著 鮑志雲 譯“你不必嚴格遵守這些原則,違背它們也不會被處以宗教刑罰。但你應當把這些原則看成警鈴,若違背了其中的一條,那麼警鈴就會響起。” ----------Arthur
Time of Update: 2018-12-03
最早想用一卡通來付錢,忘了把認證帶在身邊,網上銀行使用不了了 退而求其次,申請支付卡,被銀行的人問了一堆的問題,很多天長地久誰能記得那麼清楚,失敗。 再求其次,用別人的卡付帳,誰知道卡上錢不夠,只好退出來 等存了錢,發現每個支付項一天只能操作一次,該死的銀行系統 過了0點,不知怎麼心血來潮看看是不是可以了,進去了才想起來沒有密碼(用的別人的卡嘛),結果可想而知(每天一個支付項只能操作一次),只能等到明天0點了