There is no end, it is just the beginning! - A Game Developer's Notes
posted on 2009-07-29 23:38 Heath 閱讀(2820) 評(píng)論(24) 編輯 收藏 引用 所屬分類: Programming Language
換個(gè)名字撒,呵呵,難道情有獨(dú)鐘啊 回復(fù) 更多評(píng)論
偶也覺得,換個(gè)名字就好了啊。 回復(fù) 更多評(píng)論
This is an overstatement. There are tons of defs in the system header files, why you don't complain about them? 回復(fù) 更多評(píng)論
說明微軟高啊 微軟能把這么破的玩意組織了這么都年 ,你能說不好嗎? 存在的就是合理的! 回復(fù) 更多評(píng)論
不錯(cuò)啊! 回復(fù) 更多評(píng)論
干嘛用名詞當(dāng)函數(shù)名,重名是肯定的 回復(fù) 更多評(píng)論
麻煩都是自找的,你開個(gè)命名空間不就是了 回復(fù) 更多評(píng)論
謝謝LZ分享 回復(fù) 更多評(píng)論
確實(shí)是很大的陷阱,這種宏很多,一不小心就掉井里。如果自己編程序的話,名字改了也就改了,即使改成阿貓阿狗也無所謂。但是如果是團(tuán)隊(duì)開發(fā),而且這些名字已經(jīng)規(guī)定在了接口規(guī)范里,就不是那么容易改的了。況且,作為好的編程習(xí)慣,保持方法名的可讀性是非常重要的! 回復(fù) 更多評(píng)論
這種編譯錯(cuò)誤很好找,博主不會(huì)看不懂錯(cuò)誤提示吧 回復(fù) 更多評(píng)論
@simon 宏是通殺啊,沒有用的。 回復(fù) 更多評(píng)論
命名空間 回復(fù) 更多評(píng)論
這個(gè)還真么注意到,放在命名空間里也會(huì)替換么? 回復(fù) 更多評(píng)論
簡(jiǎn)直是扯淡。 回復(fù) 更多評(píng)論
@岳陽 @fuckyou 自己實(shí)踐去吧,別沒事在這里亂吐口水... 回復(fù) 更多評(píng)論
存在就是合理。在 Windows 平臺(tái)上寫東西,這種錯(cuò)誤不應(yīng)該犯。就像你用 C 寫程序,你總不能要求用 do 當(dāng)函數(shù)名是應(yīng)該被接受的。 回復(fù) 更多評(píng)論
@cyberamoeba 呵呵,這句話真有意思,你能像記住C語言關(guān)鍵字那樣記住那么多Windows API嗎?當(dāng)你發(fā)現(xiàn)自己連命名一個(gè)SetPort函數(shù)的權(quán)力都沒有的時(shí)候,你還會(huì)這樣想嗎?上面例子中的MessageBox,當(dāng)然是個(gè)人都知道。 回復(fù) 更多評(píng)論
你有命名MessageBox的權(quán)利,條件是別去包含 <windows.h>既然你包含了這個(gè)文件,那就乖乖換名字吧。 回復(fù) 更多評(píng)論
我也遇到過類似的問題,當(dāng)時(shí)沒有細(xì)究,只是重新命名了,原來是宏的問題。。。 回復(fù) 更多評(píng)論
@hdqqq undef掉MessageBox,直接調(diào)用MessageBoxA或者M(jìn)essageBoxW不就行啦,真是OUT得不行了。。。 回復(fù) 更多評(píng)論
你認(rèn)為windows該怎么做才能做到兼容ascii和Unicode呢?自己定義的函數(shù)加個(gè)項(xiàng)目名稱或者單位的前綴都是不錯(cuò)的。看看jni生成的c接口 回復(fù) 更多評(píng)論
既然你知道了原因,那出現(xiàn)了這個(gè)錯(cuò)誤信息你肯定立刻就反應(yīng)過來的了。 回復(fù) 更多評(píng)論
編譯器應(yīng)該負(fù)責(zé) 回復(fù) 更多評(píng)論
剛才測(cè)試過,在vs2008中,用了命名空間是不會(huì)有問題的。。。 回復(fù) 更多評(píng)論
Powered by: C++博客 Copyright © Heath