程序沒有bug。。。。
要么是你的程序過于簡單,要么只能說明你的程序已經(jīng)很健壯了。
沒有Bug的事情的確很難想象
感情MFC還是有很多奇怪的潛規(guī)則啊
TT....
re: 大家看一下這個(gè)問題 LOGOS 2006-06-10 21:42
程序關(guān)閉后,他所占用的內(nèi)存空間會(huì)被系統(tǒng)回收。
不過我不能確定sListen是否會(huì)被關(guān)閉
re: 對(duì)list的查找的另一種作法 LOGOS 2006-06-10 17:02
很想跟你說,iterator是不穩(wěn)定的對(duì)象,insert,delete或者其他一些操作,都會(huì)使得當(dāng)前擁有的iterator失效。
re: fstream 和 中文路徑 LOGOS 2006-06-09 23:25
做了更多的測試之后,發(fā)現(xiàn)ios::imbue方法失效了,要改變語言類別,只能通過locale::global實(shí)現(xiàn)。
但是問題卻來了,設(shè)置global為中文后,cout卻喪失了輸出中文的能力。。。
re: fstream 和 中文路徑 LOGOS 2006-06-09 22:21
聽君一席話,勝讀十年書。
以前用VS2003的時(shí)候,用fstream類一直可以很好支持中文文件名的,后來換了VS2005之后,建立中文文件名的文件,文件名字卻一直是亂碼(wfstream不在此例),內(nèi)心十分疑惑。
看了你的貼,做了一下測試,所有問題都OK了。
const char * szData1 = oss.str().c_str();
szData1[0] == '\0';
不過既然是臨時(shí)變量,你這么用
string & ss = oss.str();
const char * szData2 = ss.c_str();
不符合規(guī)范吧
re: 為什么main有多種格式? LOGOS 2006-06-07 17:50
你所說的調(diào)用規(guī)范,在將源代碼編譯成匯編形式后輸出可以看出來。
main函數(shù),靜態(tài)函數(shù),都在函數(shù)名之前加_,參數(shù)的調(diào)用是堆棧實(shí)現(xiàn)的,這一點(diǎn)所有的函數(shù)都是一致的。
re: 公司面試題目集合: LOGOS 2006-06-03 10:33
第三題夠惡心的,程序講究的是簡單明了,可不是耍NB的。
a swap b.
a = a-b
b = a+b
a = b-a
over.
re: C++隨筆 delete void * LOGOS 2006-06-02 08:29
delete void*不太實(shí)用吧,有什么人會(huì)做這種事情呢
嗯,在有繼承的體系中,重載賦值操作符的確會(huì)發(fā)生很多災(zāi)難性的事情。
增加知識(shí)了。
有些理解了ios_binary的意義,添入文章中了。
我不太清楚你要干什么。。。
class Pen : public Resource;
class PenManager : public ResourceManager;
class Brush : public Resource;
class BrushManager : public ResourceManager;
ResourcePtr ResourceManager::create(...) 只是創(chuàng)建一個(gè)占位符,但是還沒有l(wèi)oad。
設(shè)計(jì)基類Resource的目的,是為了可以重用ResourceManager對(duì)資源的管理代碼,不是給你用的。
至于對(duì)具體資源的引用和載入,是留給具體的ResourceManager來實(shí)現(xiàn)的。因此你要?jiǎng)?chuàng)建Pen,應(yīng)該這么做:PenPtr p = PenManager::singleton().load(...)。而不是:PenPtr p = (PenPtr)ResourceManager::singleton().create(...)。
re: 初來乍到 LOGOS 2005-12-27 17:11
關(guān)于這個(gè)問題,我也差異了一下,不過編譯成匯編后,就明白了:這些事情,是編譯器決定的事情.
; Line 11
mov DWORD PTR _i$[ebp], 3
; Line 12
mov eax, DWORD PTR _i$[ebp]
add eax, DWORD PTR _i$[ebp]
add eax, DWORD PTR _i$[ebp]
mov DWORD PTR _sum$[ebp], eax
mov ecx, DWORD PTR _i$[ebp]
add ecx, 1
mov DWORD PTR _i$[ebp], ecx
mov edx, DWORD PTR _i$[ebp]
add edx, 1
mov DWORD PTR _i$[ebp], edx
mov eax, DWORD PTR _i$[ebp]
add eax, 1
mov DWORD PTR _i$[ebp], eax