re: 人的差異源于思考方式 Corner Zhang 2007-07-23 10:38
嗯,分析的好,可不夠深入。
對(duì)人類(lèi)思維的深入研究,可以看看印度的佛經(jīng)。
這樣做還是會(huì)出tts問(wèn)題的,若CSomeDll是個(gè)singleton這種在dll之外new 和 delete才不會(huì)出問(wèn)題,為了避開(kāi)tts問(wèn)題可以在dll中加入對(duì)CSomeDll創(chuàng)建和銷(xiāo)毀用的導(dǎo)出函數(shù)
這樣的研究、嘗試是有意義的。
不過(guò)在實(shí)際項(xiàng)目中,還是產(chǎn)出可理解的代碼為先。
原則:
Keep it work
Keep it work, and right
Keep it work、right and fast
我曾經(jīng)試過(guò)8.0->7.1的如上相似的手工轉(zhuǎn)化,好像沒(méi)有問(wèn)題。
不過(guò),到別的版本我就不知了!
呵呵,可以用來(lái)判斷l(xiāng)ittle endian or big endian
@DC
不一定的。具體的還得看在目標(biāo)平臺(tái)上的測(cè)試結(jié)果。
影響性能的因素不只是指令所占的cpu周期,在現(xiàn)代的cpu上由于超標(biāo)量體系的引入,跳轉(zhuǎn)指令會(huì)影響cpu的分支預(yù)測(cè)功能,從而使得cache hit rate又說(shuō)下降。
re: 創(chuàng)業(yè)就是一起玩命 Corner Zhang 2007-07-02 19:35
看得出,此作者心態(tài)嚴(yán)重失衡!胡言亂語(yǔ)中
打個(gè)趣的說(shuō):街上擺小攤的也在創(chuàng)業(yè)!
而且對(duì)于不同人生經(jīng)歷的人來(lái)說(shuō)定義不一樣。有的看作是開(kāi)店,有的當(dāng)成是貿(mào)易,有的認(rèn)為是經(jīng)商,有的想當(dāng)然的以為是開(kāi)公司,有的是做事業(yè),也有的是“種田”......
從我說(shuō)認(rèn)識(shí)的前輩中看:只有對(duì)失敗無(wú)所危懼的人才適合創(chuàng)業(yè),他們有不少相似處--誠(chéng)實(shí)、勤儉、認(rèn)真
re: 趣事摘記 Corner Zhang 2007-06-09 21:02
@天衣有縫
(真誠(chéng)的)知我者天衣有縫也! :)
re: 命令行界面VS圖形界面 Corner Zhang 2007-04-26 19:05
呵呵,其實(shí)再過(guò)2年,你可能又會(huì)回歸CLI的方式,畢竟這是programmer最為自然的方式。如果你看完《The Art of Unix Programming》后,就會(huì)知道為什么以shell command為基礎(chǔ)的人機(jī)接口的unix系OS不滅了。
玩游戲的用鼠標(biāo),寫(xiě)程序的敲鍵盤(pán) :)
re: 趣事摘記 Corner Zhang 2007-04-25 13:48
喂!本人只是隨便寫(xiě)個(gè)生活片段而已,自寫(xiě)自樂(lè)而已啦!
re: 再見(jiàn)螢火蟲(chóng) Corner Zhang 2007-04-23 16:08
我也看過(guò)此片。
我的感想是:日本人民對(duì)戰(zhàn)爭(zhēng)的反思中,只有對(duì)自身苦難的追憶,卻沒(méi)有對(duì)自身惡行的反省。
re: why? Corner Zhang 2007-04-18 15:18
服了U! 細(xì)節(jié)上的錯(cuò)誤先不說(shuō),編譯時(shí)有沒(méi)有注意編譯器的警告,開(kāi)啟編譯器的RTTI option沒(méi)有?
re: why? Corner Zhang 2007-04-17 12:37
汗! 這里只好多句話了:學(xué)好C++!
re: 寬度優(yōu)先搜索 Corner Zhang 2007-04-15 11:20
你那個(gè)“圖1”在哪呢?
re: 圖片測(cè)試貼 Corner Zhang 2007-04-07 11:31
@江水獸
謝謝了 :)
re: C++源文件編碼問(wèn)題 Corner Zhang 2007-04-05 19:36
建議把源代碼的文件的編碼設(shè)為UTF8
性格決定命運(yùn),氣度影響格局。
哈哈,技術(shù)是在互相切磋中才能有長(zhǎng)進(jìn),思想只有在傳播中得以章顯價(jià)值。
我是這樣想的:多多的實(shí)踐各種技術(shù),多多的交流溝通、發(fā)表文章。
或許通過(guò)這樣的途徑,可以塑造更好的自己!
這本書(shū)已經(jīng)講得很透了!
望繼續(xù)看下去,并且使用dumpbin.exe看看asm code, 配合著多寫(xiě)實(shí)驗(yàn)代碼去驗(yàn)證/測(cè)試書(shū)上的內(nèi)容 :)
嘿嘿,如果你能這樣挺到書(shū)尾的話,我向你討教了!
本來(lái)的意思是從空明流轉(zhuǎn)處發(fā)現(xiàn)這個(gè)tool的,由于少敲了幾個(gè)字,造成了誤解,實(shí)在抱歉,內(nèi)容已經(jīng)改了。
@LOGOLS OFF
赫赫,當(dāng)初我寫(xiě)下這回復(fù),就覺(jué)得少不了具務(wù)實(shí)精神的回復(fù)!
對(duì)象(Object)-- 平時(shí)口頭上經(jīng)常提到“基于對(duì)象的編程”,“面向?qū)ο蟮木幊獭?,凡是要隱藏部分信息的那個(gè)概念,就是通常意義上的對(duì)象。
類(lèi)(Class)-- 在C++中,這是指一些類(lèi)型,它們有別于float, int, long...,從compiler的角度看,它是一族對(duì)象的母板,并且存在編譯期
實(shí)例(Instance)-- 是個(gè)運(yùn)行時(shí)的概念,擁有自身狀態(tài),具有生存期/擁有權(quán)性質(zhì)的,寄身于memory的二進(jìn)制表示。就因?yàn)檫@個(gè)原因,成為hacker整日追蹤的目標(biāo)。
re: 請(qǐng)達(dá)人提示一下 Corner Zhang 2007-03-22 14:27
要看是什么要求
1 需要在XML的可讀格式與Binary格式間轉(zhuǎn)化嗎?
是的話BinaryFormatter就是: 先把內(nèi)存中對(duì)象的布局->XML可理解的格式,然后像大多數(shù)編解碼器的原理那樣,做一次XML->Binary的轉(zhuǎn)化,同時(shí)存儲(chǔ)到disc上,成為文件
2 如果第一個(gè)問(wèn)題地回答是否,問(wèn)題就顯得比較簡(jiǎn)單些,直接完成對(duì)象布局->Binary的轉(zhuǎn)化,如果心理對(duì)C++的對(duì)象不夠了解,先看看Lippman的<<Inside The C++ Object Model>>
文章很好,可有些偏頗!
說(shuō)實(shí)話,我學(xué)生時(shí)就是學(xué)習(xí)很用功,但成效不大的那個(gè)樣子,現(xiàn)在看來(lái)這樣也有好處,是成為所謂大牛前的磨礪階段。
把學(xué)習(xí)比作人生的話,就是每個(gè)人都處于自身成長(zhǎng)過(guò)程中不同境遇下時(shí),采用的不同發(fā)展策略而已。
曾經(jīng)做過(guò)的,個(gè)人最感興趣是AI,分布式計(jì)算,圖形技術(shù).
最喜歡任天堂的 Zelda 系的游戲
re: 請(qǐng)教大家 Corner Zhang 2007-03-18 22:07
其實(shí)你是問(wèn):想學(xué)到哪種程度才合適吧?
嘿嘿!<<The Matrix>>里的先哲說(shuō): "看來(lái)你在等待著些什么,我的孩子,不用太擔(dān)心,當(dāng)一切都來(lái)臨時(shí),你會(huì)覺(jué)得這事是如此確定,你感到渾身上下都是!"
re: 為了加快尋址操作的地址對(duì)齊法 Corner Zhang 2007-03-01 23:59
謝謝!reinterpret_cast處的技巧從一本<<hacker delight>>里學(xué)來(lái)的
聲明一下,其實(shí),這個(gè)問(wèn)題的一半是與項(xiàng)目的規(guī)模有關(guān)的,本來(lái)提出來(lái)就是為小規(guī)模團(tuán)隊(duì)開(kāi)發(fā)的軟件系統(tǒng)有關(guān)!
就是,一個(gè)類(lèi)的實(shí)現(xiàn)被一個(gè)以上的人參與的話,請(qǐng)用此方式時(shí)再三考慮,建議在一開(kāi)始把這種狀態(tài)管理的代碼包在一個(gè)class中,以便以后遇到問(wèn)題時(shí)好集中處理,也不會(huì)蔓延到其它模塊,可以試試Hurb Sutter的Pimpl手法.
恩,對(duì)!做成值類(lèi)型的簡(jiǎn)單struct.
潛力無(wú)限啊,友善的多一句:希望技術(shù)上鉆精些。祖各位新年快樂(lè)
我也想看?。。?
有的話,發(fā)我cyberzei@hotmail.com里 :)
我忘了在State類(lèi)中寫(xiě)operator =了
就這個(gè)問(wèn)題,我的結(jié)論是:
如果管理的狀態(tài)量不算很多的話,使用本文的簡(jiǎn)單技術(shù)或set***()/get***()足夠了。
如果真遇到了大量的狀態(tài)管理,就像下面這樣:
struct State {
// 原來(lái)的代碼 。。。
// 增加的code
operator int () const { return intV_; }
operator bool () const { return boolV_; }
operator char* () const { return rawStrV_; }
};
這種削弱類(lèi)型的東西 :)
然后再類(lèi)中聲明一個(gè)含有State類(lèi)型的容器,如std::map<StateType,State> states_;
然后寫(xiě):
void T::setWindowed(bool v) { states_[ST_WINDOWED] = v; /*...*/ }
bool T::getWindowed() const { return states_[ST_WINDOWED]; }
這樣做,算是個(gè)折衷吧!
知道你的意思!其實(shí)各有優(yōu)缺點(diǎn)的,引入了switch-case增加了無(wú)形的跳轉(zhuǎn)指令,會(huì)使cpu的分支預(yù)測(cè)不能發(fā)揮效用,可是卻能避免程序代碼中的臨時(shí)變量的產(chǎn)生,也容易在一個(gè)代碼段里理清狀態(tài)與狀態(tài)間的邏輯關(guān)系阿!
你提到的“映射”是指std::map/std::multimap ?
re: 程序員的七種武器 Corner Zhang 2007-01-30 13:25
很有意思的說(shuō)法,可是顯得繁瑣!
(我也想過(guò)這種問(wèn)題的)
最后的“強(qiáng)烈的好奇心”是說(shuō)到了核心 :)
我的個(gè)人看法:
Q:什么是計(jì)算機(jī)核心開(kāi)發(fā)者呢?
A:數(shù)學(xué)家、思想家與工程師的結(jié)合體,即:理想主義者+實(shí)用主義者
既然是說(shuō)程序,那“編輯時(shí)”是不應(yīng)該劃進(jìn)來(lái)的,在更大的范疇內(nèi)可以名為“設(shè)計(jì)時(shí)”,其它的很對(duì)。
我常用的是C++,所以習(xí)慣于在window api前面帶上“::”,如:::CreateFile(...), ::CloseHandle(...)。這樣更能把自己的通用code與系統(tǒng)調(diào)用區(qū)分開(kāi)來(lái)。
交個(gè)朋友:msn/mail: cyberzei@hotmail.com