內(nèi)存空間分配(C++)
摘要: 在C++中,內(nèi)存分成5個(gè)區(qū),他們分別是堆、棧、自由存儲(chǔ)區(qū)、全局/靜態(tài)存儲(chǔ)區(qū)和常量存儲(chǔ)區(qū)。
棧,就是那些由編譯器在需要的時(shí)候分配,在不需要的時(shí)候自動(dòng)清楚的變量的存儲(chǔ)區(qū)。里面的變量通常是局部變量、函數(shù)參數(shù)等。
堆,就是那些由new分配的內(nèi)存塊,他們的釋放編譯器不去管,由我們的應(yīng)用程序去控制,一般一個(gè)new就要對(duì)應(yīng)一個(gè)delete。如果程序員沒(méi)有釋放掉,那么在程序結(jié)束后,操作系統(tǒng)會(huì)自動(dòng)回收。
……
閱讀全文
抽象數(shù)據(jù)類型ADT
摘要: (Abstract Data Type 簡(jiǎn)稱ADT)
是指一個(gè)數(shù)學(xué)模型以及定義在此數(shù)學(xué)模型上的一組操作。
抽象數(shù)據(jù)類型需要通過(guò)固有數(shù)據(jù)類型(高級(jí)編程語(yǔ)言中已實(shí)現(xiàn)的數(shù)據(jù)類型)來(lái)實(shí)現(xiàn)。
……
閱讀全文
虛析構(gòu)函數(shù)(C++)
摘要: 我們知道,用C++開(kāi)發(fā)的時(shí)候,用來(lái)做基類的類的析構(gòu)函數(shù)一般都是虛函數(shù)。可是,為什么要這樣做呢?下面用一個(gè)小例子來(lái)說(shuō)明:
有下面的兩個(gè)類:
class ClxBase
{
public:
……
閱讀全文
Hash
摘要: Hashing定義了一種將字符組成的字符串轉(zhuǎn)換為固定長(zhǎng)度(一般是更短長(zhǎng)度)的數(shù)值或索引值的方法,稱為散列法,也叫哈希法。由于通過(guò)更短的哈希值比用原始值進(jìn)行數(shù)據(jù)庫(kù)搜索更快,這種方法一般用來(lái)在數(shù)據(jù)庫(kù)中建立索引并進(jìn)行搜索,同時(shí)還用在各種解密算法中。
設(shè)所有可能出現(xiàn)的關(guān)鍵字集合記為U(簡(jiǎn)稱全集)。實(shí)際發(fā)生(即實(shí)際存儲(chǔ))的關(guān)鍵字集合記為K(|K|比|U|小得多)。|K|是集合K中元素的個(gè)數(shù)。
散列方法是使用函數(shù)hash將U映射到表T[0..m-1]的下標(biāo)上(m=O(|U|))。這樣以U中關(guān)鍵字為自變量,以h為函數(shù)的運(yùn)算結(jié)果就是相應(yīng)結(jié)點(diǎn)的存儲(chǔ)地址。從而達(dá)到在O(1)時(shí)間內(nèi)就可完成查找。
……
閱讀全文
auto_ptr(C++)
摘要: 很多人聽(tīng)說(shuō)過(guò)標(biāo)準(zhǔn)auto_ptr智能指針機(jī)制,但并不是每個(gè)人都天天使用它。這真是個(gè)遺憾,因?yàn)閍uto_ptr優(yōu)雅地解決了C++設(shè)計(jì)和編碼中常見(jiàn)的問(wèn)題,正確地使用它可以生成健壯的代碼。本文闡述了如何正確運(yùn)用auto_ptr來(lái)讓你的代碼更加安全——以及如何避免對(duì)auto_ptr危險(xiǎn)但常見(jiàn)的誤用,這些誤用會(huì)引發(fā)間斷性發(fā)作、難以診斷的bug。
……
閱讀全文
Unix和Windows服務(wù)器區(qū)別
摘要: 小型機(jī)說(shuō)了很多年,PC服務(wù)器也是大家比較熟悉的,他們區(qū)別還是非常大的,UNIX跟PC服務(wù)器的CPU不同,最簡(jiǎn)單臺(tái)式機(jī)、筆記本用的CPU Intel的奔騰等非常清楚。但是提小型機(jī)處理器的名字都搞不清楚,現(xiàn)在他們用的CPU處理器都叫RISC處理器,常見(jiàn)的Intel包括AMD都是CISC處理器,那RISC跟CISC有什么區(qū)別,RISC是精簡(jiǎn)指令集計(jì)算機(jī),CISC是復(fù)雜指令計(jì)算機(jī)。RISC技術(shù)是IBM一個(gè)研究院在1974年發(fā)明的,IBM對(duì)計(jì)算機(jī)研究非常深入,在70年代就發(fā)現(xiàn)我們能夠用20%的指令就可以完成80%的工作,并且這20%的指令都是非常簡(jiǎn)單和基礎(chǔ)的指令。如果要另外完成20%工作需要非常復(fù)雜的指令,如果要在CPU里面實(shí)現(xiàn)指令,就導(dǎo)致CPU非常復(fù)雜,這個(gè)機(jī)器效率非常低,所以這就導(dǎo)致RISC技術(shù)的產(chǎn)生,RISC技術(shù)改寫了計(jì)算機(jī)發(fā)展的歷程。技術(shù)產(chǎn)生導(dǎo)致RISC System/6000的誕生。
……
閱讀全文
TCP和UDP的區(qū)別
摘要: 一、什么是TCP和UDP
TCP和UDP是TCP/IP協(xié)議中的兩個(gè)傳輸層協(xié)議,它們使用IP路由功能把數(shù)據(jù)包發(fā)送到目的地,從而為應(yīng)用程序及應(yīng)用層協(xié)議(包括:HTTP、SMTP、SNMP、FTP和Telnet)提供網(wǎng)絡(luò)服務(wù)。TCP提供的是面向連接的、可靠的數(shù)據(jù)流傳輸,而UDP提供的是非面向連接的、不可靠的數(shù)據(jù)流傳輸。面向連接的協(xié)議在任何數(shù)據(jù)傳輸前就建立好了點(diǎn)到點(diǎn)的連接。ATM和幀中繼是面向連接的協(xié)議,但它們工作在數(shù)據(jù)鏈路層,而不是在傳輸層。普通的音頻電話也是面向連接的。
……
閱讀全文
Templete(C++)
摘要: 一、什么是模板
模板是根據(jù)參數(shù)類型生成函數(shù)和類的機(jī)制(有時(shí)稱為“參數(shù)決定類型”)。通過(guò)使用模板,可以只設(shè)計(jì)一個(gè)類來(lái)處理多種類型的數(shù)據(jù),而不必為每一種類型分別創(chuàng)建類。
例如,創(chuàng)建一個(gè)類型安全函數(shù)來(lái)返回兩個(gè)參數(shù)中較小的一個(gè),如果不使用Templates,必須要編寫一系列如下的函數(shù):
……
閱讀全文
進(jìn)程和線程
摘要: 一、
現(xiàn)代的操作系統(tǒng)都可以有多個(gè)進(jìn)程,而每一個(gè)進(jìn)程都可以有多個(gè)線程;同一進(jìn)程中的線程之間共享同一塊存儲(chǔ)空間,所以都可以訪問(wèn)同一個(gè)全程變量等,而進(jìn)程之間要通訊需要使用共享內(nèi)存等手段。對(duì)操作系統(tǒng)來(lái)說(shuō),進(jìn)程的開(kāi)銷大,而線程則小得多。
關(guān)于進(jìn)程較實(shí)質(zhì)的定義﹕
1. 進(jìn)程是程序的一次執(zhí)行;
2. 進(jìn)程是可以和別的計(jì)算器并發(fā)執(zhí)行的計(jì)算;
……
閱讀全文
敏捷開(kāi)發(fā)簡(jiǎn)介
摘要: ASD:Agile Software Development——敏捷軟件開(kāi)發(fā)
1、什么是敏捷軟件開(kāi)發(fā)?
敏捷軟件開(kāi)發(fā)是一個(gè)概念意義上的框架,用來(lái)取代軟件工程項(xiàng)目的概念;它強(qiáng)調(diào)在項(xiàng)目的整個(gè)生命周期中,擁抱并促進(jìn)由于軟件進(jìn)化式的發(fā)展所帶來(lái)的變化。
請(qǐng)注意其中的三個(gè)關(guān)鍵詞:
……
閱讀全文
web游戲制作過(guò)程詳細(xì)介紹
摘要: 一、游戲制作的主要流程
電腦游戲開(kāi)發(fā)小組中的任何一個(gè)人(這個(gè)角色通常有策劃擔(dān)任),只要有了一個(gè)新的想法或念頭,就孕育著一個(gè)新游戲的誕生。在這個(gè)創(chuàng)意被充分討論之后,再加上對(duì)其操作過(guò)程的趣味性及市場(chǎng)銷售的可行性的預(yù)測(cè)等因素的準(zhǔn)確判斷,一個(gè)完整的策劃方案才可能產(chǎn)生。在經(jīng)過(guò)充分的討論后,策劃人員必須將討論的重點(diǎn)寫成文字,也就是提出完整的策劃方案,經(jīng)
……
閱讀全文
iterator中的前++和后++(C++)
摘要: for(iterator it = begin(); it != end(); ++it)
或者
for(iterator it = begin(); it != end(); it++)
區(qū)別是什么呢??
……
閱讀全文
游戲開(kāi)發(fā)使用何種語(yǔ)言
摘要: 目錄:
1、C語(yǔ)言
2、C++
3、C++與C的抉擇
4、匯編語(yǔ)言
5、Pascal語(yǔ)言
6、Visual Basic
7、Java
8、創(chuàng)作工具
9、結(jié)論
……
閱讀全文
Object-Oriented Analysis 優(yōu)點(diǎn)
摘要: Object-Oriented Analysis 優(yōu)點(diǎn)
--------說(shuō)法一:
1、維護(hù)簡(jiǎn)單。
模塊化是面向?qū)ο缶幊讨械囊粋€(gè)特征。實(shí)體被表示為類和同一名字空間中具有相同功能的類,我們可以在名字空間中添加一個(gè)類而不會(huì)影響該名字空間的其他成員。
……
閱讀全文
操作系統(tǒng)中斷
摘要: 1、中斷的類型。
從中斷事件的性質(zhì)出發(fā),中斷可以分為兩大類:
強(qiáng)迫性中斷事件:包括硬件故障中斷,程序性中斷,外部中斷和輸入輸出中斷等。
……
閱讀全文
子網(wǎng)掩碼計(jì)算
摘要: IP地址=網(wǎng)絡(luò)號(hào) 連接 主機(jī)號(hào),當(dāng)需要子網(wǎng)劃分時(shí),主機(jī)號(hào)高位部分會(huì)作為子網(wǎng)號(hào),從而減少主機(jī)數(shù)目。
IP分類:(A、B、C比較常用)
A類
……
閱讀全文
測(cè)試用例的作用
摘要: 1. 你工作不主動(dòng),你需要測(cè)試用例來(lái)催著你去工作;
2. 你測(cè)試時(shí)總感覺(jué)思維很混亂,或者總感覺(jué)有些功能沒(méi)有測(cè)到,而一些功能已經(jīng)測(cè)過(guò)好幾遍了,這樣測(cè)試用例能夠幫你理清頭緒,進(jìn)行比較系統(tǒng)的測(cè)試,不會(huì)有太多的重復(fù),也不會(huì)讓你的測(cè)試工作產(chǎn)生遺漏;
……
閱讀全文
轉(zhuǎn)載-微軟筆試題目
摘要: 一、選擇題
主要的知識(shí)點(diǎn):
1、臨界變量critical section的概念(還有semaphore,thread類似的這些)。
2、存儲(chǔ)器cache寫穿透和寫返回的概念(復(fù)習(xí)一下高體的cache)。
……
閱讀全文
智力測(cè)試題目
摘要: 說(shuō)謊國(guó)與誠(chéng)實(shí)國(guó):
詢問(wèn)誠(chéng)實(shí)國(guó)的路,只需要問(wèn)任意一個(gè)人“你的國(guó)家怎么走”,則他們所指的路都是誠(chéng)實(shí)國(guó)的路。
12個(gè)球一個(gè)天平,現(xiàn)知道只有一個(gè)和其它的重量不同,問(wèn)怎樣稱才能用三次就找到那個(gè)球
……
閱讀全文
小百科
摘要: 【四大名繡】蘇繡〖蘇州〗、湘繡〖湖南〗、蜀繡〖四川〗、廣繡〖廣東〗
【四大名扇】檀香扇〖江蘇〗、火畫扇〖廣東〗、竹絲扇〖四川〗、綾絹扇〖浙江〗
【四大名花】牡丹〖山東菏澤〗、水仙〖福建漳州〗、菊花〖浙江杭州〗、山茶〖云南昆明〗
……
閱讀全文
美語(yǔ)口頭語(yǔ)
摘要: Thousand times no! 絕對(duì)辦不到!
Don't mention it. 沒(méi)關(guān)系,別客氣。
Who knows! 天曉得!
……
閱讀全文
天津俗語(yǔ)
摘要: 掃盲用~
1、 上亮子
特指門上方的玻璃窗。(不知其他地方的人對(duì)這一物件有沒(méi)有特定的叫法)
……
閱讀全文
[2008年10月22日]揚(yáng)訊筆試和群碩面試
摘要: 2008年10月22日,是我很難忘記的一天。本來(lái)昨天應(yīng)該寫好這篇文章,但是實(shí)在太累了,就沒(méi)有寫。等到今天想寫寫昨天的事情,竟然腦子里的東西變得很雜亂。仔細(xì)回想一下,昨天引導(dǎo)我一天經(jīng)歷的是……地鐵。
早上快9點(diǎn)出門,到食堂買早飯
……
閱讀全文
[2008年10月24日]忙碌的一天啊
摘要: 今天從早上到下午,一共收到3個(gè)通知,有維塔士的筆試通知、久游的面試通知和騰訊的筆試通知。
早上睡夢(mèng)中被電話驚醒,看到來(lái)電號(hào)碼是座機(jī),而且不是熟人,就知道有好消息來(lái)了。接聽(tīng)了電話,原來(lái)是維塔士公司找我下周三去筆試,電話那邊的工作人員問(wèn)了問(wèn)我從什么地方得知的維塔士,然后告訴我當(dāng)天
……
閱讀全文
[2008年10月19日]群碩筆試
摘要: 群碩在張江浦東軟件園,第一次去張江,人生地不熟,自己又是不辨東西南北的路盲~~ 還好我一貫冷靜,再加上王MM的包上有個(gè)指南針!看了看張江地鐵站門口的地圖,記住幾個(gè)重要的道路名稱,我就出發(fā)了。這一躺真叫一個(gè)遠(yuǎn)!去的時(shí)候
……
閱讀全文
做人
摘要: 1、說(shuō)話要用腦子,敏事慎言,話多無(wú)益。講話不要只顧一時(shí)痛快,信口開(kāi)河,以為人家給你笑臉就是欣賞,沒(méi)完沒(méi)了把掏心窩子的話都講出來(lái),結(jié)果讓人家徹底摸清了家底,還偷著笑你。
2、遇事不要急于下結(jié)論,即便有了答案也要等等,也許有更好的解決方式,站在不同的角度就有不同答案,要學(xué)會(huì)換位思維,特別是在遇到麻煩的時(shí)候,千萬(wàn)要學(xué)會(huì)等一等、靠一靠。
……
閱讀全文
12種貌似衛(wèi)生的不衛(wèi)生習(xí)慣
摘要: 生活中有一些習(xí)慣,貌似衛(wèi)生,實(shí)際上并不衛(wèi)生,不僅不能保證身體健康,反而對(duì)身體有害。
1.白紙用于包食品
為了白紙的“白”,許多廠家在生產(chǎn)過(guò)程中往往使用漂白劑,而漂白劑在與食品接觸后,會(huì)引起一系列化學(xué)反應(yīng),產(chǎn)生一些有害物質(zhì),極易對(duì)食品造成污染。
2.衛(wèi)生紙擦拭餐具、水果
……
閱讀全文
面試或筆試題目要點(diǎn)(Java)
摘要: 1.Java有那些基本數(shù)據(jù)類型,String是不是基本數(shù)據(jù)類型,他們有何區(qū)別。字符型,數(shù)值型,布爾型
2.字符串的操作:
寫一個(gè)方法,實(shí)現(xiàn)字符串的反轉(zhuǎn),如:輸入abc,輸出cba
寫一個(gè)方法,實(shí)現(xiàn)字符串的替換,如:輸入bbbwlirbbb,輸出bbbhhtccc。
……
閱讀全文
== 與 equals 的區(qū)別(Java)
摘要: 在比較字符型數(shù)據(jù)時(shí),==比較的是內(nèi)存中的地址,比較的是對(duì)象的句柄;而equals()比較的是地址內(nèi)的內(nèi)容,比較的是對(duì)象。由于JAVA中除基本數(shù)據(jù)類型外其它一切都是對(duì)象,而對(duì)象變量存儲(chǔ)的都是引用,相當(dāng)于C中的指針,所以在比較對(duì)象時(shí)如String,用==是比較兩個(gè)變量是否指向同一個(gè)對(duì)象,而用equals才是比較兩個(gè)String的內(nèi)容是否相等。
==絕對(duì)比equals快。
……
閱讀全文
棧內(nèi)存與堆內(nèi)存(Java)
摘要: Java把內(nèi)存劃分成兩種:一種是棧內(nèi)存,一種是堆內(nèi)存。
在函數(shù)中定義的一些基本類型的變量和對(duì)象的引用變量都在函數(shù)的棧內(nèi)存中分配。當(dāng)在一段代碼塊定義一個(gè)變量時(shí),Java就在棧中為這個(gè)變量分配內(nèi)存空間,當(dāng)超過(guò)變量的作用域后,Java會(huì)自動(dòng)釋放掉為該變量所分配的內(nèi)存空間,該內(nèi)存空間可以立即被另作他用。
……
閱讀全文
質(zhì)數(shù)判斷算法
摘要: 有人做過(guò)這樣的驗(yàn)算:1^2+1+41=43,2^2+2+41=47,3^2+3+41=53……于是就可以有這樣一個(gè)公式:設(shè)一正數(shù)為n,則n^2+n+41的值一定是一個(gè)質(zhì)數(shù)。這個(gè)式子一直到n=39時(shí),都是成立的。但n=40時(shí),其式子就不成立了,因?yàn)?0^2+40+41=1681=41*41。
研究發(fā)現(xiàn)質(zhì)數(shù)除2以外都是奇數(shù),而奇數(shù)除了【奇數(shù)*奇數(shù)】(或再加“*奇數(shù)”)都是質(zhì)數(shù)。那么用計(jì)算機(jī)先把【奇數(shù)*奇數(shù)】(或再加“*奇數(shù)”)(比如9,15,21,25,27,33,35,39……)都求出來(lái),再找奇數(shù)中上面沒(méi)提到的那些數(shù),那些數(shù)就是素?cái)?shù)。
有近似公式: x 以內(nèi)質(zhì)數(shù)個(gè)數(shù)約等于 x / ln(x) .ln是自然對(duì)數(shù)的意思。準(zhǔn)確的質(zhì)數(shù)公式尚未給出。10 以內(nèi)共 4 個(gè)質(zhì)數(shù)。100 以內(nèi)共 25 個(gè)質(zhì)數(shù)。
……
閱讀全文
計(jì)算二進(jìn)制位"1"的個(gè)數(shù)
摘要: 寫一個(gè)函數(shù),返回?cái)?shù)字中二進(jìn)制位為'1'的個(gè)數(shù)。
方法1:分別判斷各個(gè)位
方法2:循環(huán)中直接計(jì)算1的數(shù)量
方法3:并行計(jì)算的
PS:
這些方法是計(jì)算二進(jìn)制形式1的個(gè)數(shù),如果用來(lái)判斷一個(gè)數(shù)是否是2的整數(shù)次冪,可以用這些方法,但是對(duì)此還有更好的方法,就是 A xor (A-1) == 0。
閱讀全文
01背包問(wèn)題的貪婪算法
摘要: 0/1背包問(wèn)題有好幾種貪婪策略,每個(gè)貪婪策略都采用多步過(guò)程來(lái)完成背包的裝入,在每一步過(guò)程中利用貪婪準(zhǔn)則選擇一個(gè)物品裝入背包。
1、從剩余的物品中,選出可以裝入背包的價(jià)值最大的物品。利用這種規(guī)則,價(jià)值最大的物品首先被裝入(假設(shè)有足夠容量),然后是下一個(gè)價(jià)值最大的物品,如此繼續(xù)下去。這種策略不能保證得到最優(yōu)解。例如,n=2, weight=[100, 10, 10], prize=[20, 15, 15], count=105。當(dāng)利用價(jià)值貪婪準(zhǔn)則時(shí),獲得的解為x= [1, 0, 0],這種方案的總價(jià)值為20。而最優(yōu)解為[0, 1, 1],其總價(jià)值為30。
……
閱讀全文