原创 “=”號惹得禍

這一點即使強調一萬遍也不爲過:在C++中,千萬不要把“==”寫成”=”;否則你的程序會死的很難看! 但是,現實中即使是那些天才程序員也會犯這種極其愚蠢的錯誤,但願大家不要在Check-In代碼的時候寫上”type error”. 我看不慣

原创 C/C++編程常見問題(2)-錯誤打印64位長整數

uint64 TranscodingFlag = 0x100000001LL; uint32 NewFlag = 0x1; printf("transcodingFlag=[%u], newFlag=[%u]/n", Transcodin

原创 撥雲見日-尋找C++的this指針

有許多C++的技術資料特意指出,C++語言使用THISCALL調用方式,在X86架構上,會使用ECX寄存器傳遞this指針。真的是這樣嗎? 爲了找到this指針,編寫如下C++程序(main.cpp):

原创 C/C++編程常見問題(1)-指針轉換

如下程序:   unsigned short GetID(char * pData, const int Len) { unsigned short ret = 0; if (pData && Len >= sizeof(ret) )

原创 說說“每日構建”-Daily Build

軟件開發的每日構建非常重要,如果是ProjectManager或者DevManager,通常很想知道如下內容: 1.  多個開發人員每天都提交code,是否有程序員提交的code導致系統不能編譯通過呢? 我想自動檢測。 2. 我想每天收到

原创 Flash中的LoadVars

根據Flash幫助文檔,在Flash中可以通過LoadVars與服務器進行交互;在實際工程中使用了LoadVars. Flash在Load之後啓動了一個定時器,定時器事件執行的工作就是從服務器的廣告頁面獲得廣告信息,然後顯示在文本框內。

原创 對象刪除後,指針要賦值NULL

看Code 1: class B 2: { 3: }; 4:  5: class A 6: { 7: public: 8: A() 9: {

原创 都是“引用”惹得禍!

好久沒寫東東;今天寫點。 很多人喜歡使用C++中的引用,盡力用它來替代指針的使用,來防止指針固有的爲人詬病的缺陷;幾年前,我所在的一個大型C++項目就是這樣的,一些天才的技術狂人非常偏好使用引用,導致引用充滿角落中。最開始,我還覺得用的不

原创 delete[] 的問題

經常有這種case, 使用new char[]申請了一個字符數組,然後,由於寫作疏忽,delete的時候忘記加 “[]”了。 從C++的spec來說,new[] 和 delete[]必須必須要配對使用,這樣才能保證申請的內存爲徹底釋放掉;

原创 “=”號惹得禍

這一點即使強調一萬遍也不爲過:在C++中,千萬不要把“==”寫成”=”;否則你的程序會死的很難看! 但是,現實中即使是那些天才程序員也會犯這種極其愚蠢的錯誤,但願大家不要在Check-In代碼的時候寫上”type error”. 我看不慣

原创 “指針轉換”惹得禍

幾年前,調試過一個加密解密算法程序,原來這個程序是在Windows和Linux平臺可以順利編譯並運行;我把程序移植到了嵌入式的ArcLinux上,程序可以順利編譯,唯獨運行的時候,每次都在地址轉換的時候程序崩潰。程序大概如下:

原创 軟件設計-不是軟件開發的萬能靈丹妙藥!

一年前,出去和同事一塊兒去Woodbine打羽毛球,我們不經意間說起了軟件設計問題。 對話: 同事A:咱們買的印度公司的那套LIB庫怎麼樣?      我:整體的架構設計是非常好的,雖然能夠明顯看出是融合了幾個架構師的設計思路;但是,一批

原创 How to use "vi" edit the docs or source code files

The key important method is to know the only some shutcut key! enter vi; if you want to enter the "Edit" mode ,please t

原创 SWF與FLV文件格式

最近,因產品需要,開始研究FLV與SWF的文件格式,順便編寫了FLV與SWF文件的解析工具。 1. FLV File Format     FLV文件格式比較簡單,就是一個FLV Header加上一個FLV Tag序列構成的FLV Bod

原创 Now,ffmpeg can supports lamemp3 codec,Enjoy!

I have downloaded the ffmpeg and lamemp3 source codes.According the compile manual ,i install the MingW and MSYS softwa