星期五, 9月 29, 2006

生活

無法理解,充滿著不可思議的生活。

儘管手痛,我仍站上羽球場,來場不分敵我的大廝殺。
儘管疲憊,我仍東約西找,沉醉在你來我往的對決。

睏頓的夜晚,我坐在電腦前,唱著屬於C++的歌。
爽朗的清晨,我帶著黑眼圈,靜靜看著前人名著。
忙碌的正午,我買了點麵包,衝到工五館一嚐名題。

宿舍裡,傳來一陣又一陣的三國熱戰聲,我竟不為所動。
宵夜街上,飄著四味混雜的香氣,我漸漸地被吸引。
電腦桌前,翻過各大站台,只為了找尋快脫節的布布。
課堂上,我專注地算著奇妙的數學證明,老師的聲音卻不曾入耳。

生活充滿了無法理解的事,我為何而做?
奇妙的生活,參雜著詭異的人心,以及無可奈何的心情!

--
:p

星期四, 9月 28, 2006

極限的嚴謹定義

「對於任意給定的ε,必能找到對應的δ,使得 0 < |x - a| < δ 則 |f(x) - L| < ε」。 L 是當 x 趨近於 a 時的極限值,若以上條件成立,則證明 L 的確為 x 趨近於 a 的極限值。

假設有一函式 f(x) = 2x + 3 ,證明 lim x->2 f(x) = 7 :
|f(x) - 7| < ε => |2x - 4| < ε => 2|x - 2| < ε
又|x - 2| < δ 故 2|x - 2| < 2δ,所以 2δ = ε
當 0 < |x - 2| < δ 則 2|x - 2| < 2δ,又 2δ = ε
因此 2|x - 2| = |2x - 4| = |2x + 3 - 7| = |f(x) - 7| < 2δ = ε

我只想問,這樣證有什麼意義嗎!?

--
「把積木拆掉再組裝回去」這個譬喻真棒...

英文課

已經上了兩個禮拜的課,老師到底上了什麼阿!?
每次上課至少有半節課在玩那麥克風。口頭上是說要我們與同學練習用英文對話,但...明知道我們口說能力都不怎麼好,何必咧?如果真的是「測試」就算了,希望下次來個比較有用的活動。

另外,mid-term project 有兩個方案,都蠻不錯的,一是訪問同學,二是看書寫心得及口頭介紹此書3分鐘。我覺得一到頭來都會變成亂做,學不到什麼東西,所以我應該會選books report吧!

--
企劃不錯,但上課內容希望能豐富點..

星期三, 9月 27, 2006

惡補C++

今天中途翹掉小松鼠志工隊的說明會,趕去系學會資訊部!
聽了學長姊的說明,嗯...有種嚴的感覺(這樣才能學到東西^^)

資訊部一共有以下四組:
網頁設計組:HTML、PHP、MySQL等等..
程式設計組:ACM(C & C++)
遊戲設計組:GUI(C#)
UNIX及TCP/IP:FreeBSD為主

一番掙扎後(有嗎XD),我選了第四組。原因是網頁設計自己花時間看就行了;ACM我已經會蠻多的(嗯...其實還不夠多),短期間可能學不到什麼東西;遊戲設計基本上會花一學期上C#的語法吧。所以就選了第四組,而且這組是最難看書就搞定的,因為需要一些環境供實際操作。

部聚結束後我幫同學惡補一下C++,但基本上,這只能算overview。因為加入程式設計組要考試,想收不到人唷orz)。好在他有點基礎,就很快速地提一下可能會考的內容:
I/O、if...else、loop、array、struct(class),大概就這樣吧!

--
嗯..其實我會去ACM組鬧場XD

星期二, 9月 26, 2006

嘆~

什麼時候,周遭的感覺變了?
什麼時候,我感到一絲冰寒?
什麼時候,生活的步調快了?
難道忙碌、疲憊足以迅速影響一個人?

前些日子的感受,離我越來越遠!
我不斷地追逐,但我越是拼命,越是沮喪!
難道這一切,也要隨時間化為平凡嗎?

--
希望是我多慮了

copy & swap

copy & swap 是 exception handle 常用的技巧。處理資料的過程中,難免會遇到異常狀況,好的異常處理非 commit 則 rollback。前者保證「付諸行動」,也就是必完成使用者的要求;後者保證發生異常時,資料維持不變。copy & swap 用來實行後者,先處理副本,再與欲處理的資料交換。這樣一來,若處理過程中發生錯誤,原資料仍完好如一。

假設有個 class factory,其中有個 function process:

class factory {
public:
/* constructor, destructor, and other function */
void process (factory &);
private:
/* some data members */
}

void factory::process (factory &obj) {
// process directly obj
}

process 直接對 obj 處理,若很不幸地發生異常,process 被迫停止,將留處理不完全的 obj 。

另一個 process 版本:

void factory::process (factory &obj) {
factory temp (obj);
// process the copy : temp
swap (obj, temp);
}

我們先拷貝 obj,之後對其副本做運算,處理完成後,再交換處理過的副本與原先資料。若異常發生,temp 的 destructor 將釋放 temp 佔用的記憶體,而 obj 保持不變,也就是rollback。

--
exceptional C++ 的寶藏真多:p

星期一, 9月 25, 2006

游泳...

早上打完羽球後,就到游泳池上體育課。換好泳裝後做水上操,花樣百出,還有好幾種動作我做不來的。但水底下猜拳感覺蠻有趣的,只可惜我那時還不知能借泳鏡,沒玩到><。

自由活動時間,我發現我還是不太會游(突然會游就好玩了XD),不過我發現在水底下慢慢用鼻子吐氣的感覺蠻不錯的^^

--
游泳要加油才行