昨夜在發(fā)著高燒、輕微高反的狀態(tài)中,伴著耳邊轟隆隆的洗衣機(jī)聲昏沉睡去。早上起來卻覺神清氣爽,高反頓覺無影。 飯畢,從加查出發(fā),來到位于桑日縣的達(dá)古峽谷。 來到一處臨江而建的親猴...
不是每一個(gè)switch語句都需要一個(gè)default 為什么需要default 給每一個(gè)swith加上default分支,一直是一個(gè)推薦的實(shí)踐。在以下三種場(chǎng)景下都建議使用def...
Linux/Unix世界中,你知道stat(1) 和 stat(2) 的區(qū)別嗎? 不少初學(xué)Linux編程的同學(xué),當(dāng)然也有部分靠Google編程N(yùn)年的老炮兒,并不知道上面問題的...
C++靜態(tài)變量的初始化 摘要 在開發(fā)中經(jīng)常會(huì)有一些全局的靜態(tài)的對(duì)象,譬如logHandler,這些全局對(duì)象的使用可以簡化實(shí)現(xiàn)代碼,但使用不當(dāng)卻會(huì)導(dǎo)致莫名其妙的程序崩潰。本文從...
Haskell類型推導(dǎo) a = a + 1 在命令式編程的時(shí)代,區(qū)分一個(gè)人是否能學(xué)會(huì)編程的關(guān)鍵是看他能否理解a=a+1這個(gè)違反自然規(guī)律的表達(dá)式,在函數(shù)式編程里,這個(gè)金絲雀測(cè)試...
代碼腐化的原因 Code is read far more times than it's written 軟件開發(fā)的成本也大都發(fā)生在第一次交付之后。分析曾經(jīng)重構(gòu)過的幾個(gè)項(xiàng)目...
線程定義 線程的定義在維基百科和各種教材書中都能找到,這里再簡單描述一下:操作系統(tǒng)中能夠被調(diào)度的最小單位,有自己的context、stack以及thread-local存儲(chǔ),...
考慮下面一段代碼,假設(shè)我們實(shí)現(xiàn)了int的原子操作。兩個(gè)函數(shù)分別在獨(dú)立的線程運(yùn)行(同一進(jìn)程),那么打印的a值會(huì)是多少呢? 結(jié)論是打印a的值有時(shí)會(huì)為0. 所見并非所得 看不見的左...