精華區beta CompBook 關於我們 聯絡資訊
作者: jjhou (jjhou) 看板: CompBook 標題: 吾所到之處,君亦可至 時間: Sun Jun 1 20:36:28 1997 【吾所到之處,君亦可至】 本文登於 RunPC 1997.05 侯俊傑 jjhou@ccca.nctu.edu.tw 我再次整理了一些來函,與大家分享。這些信件經過「依媚兒」的往返, 展現出一問一答的形式。我想在此對讀者們說,有不少問題您其實可以寫 到 BBS programming 版上,會有許多熱心的前輩提供經驗。如果寫給我, 難保什麼時候收到回信。 這一次我談到一些十分基本的觀念。也許電腦高手們會說我浪費篇幅。 可是,我和林振輝主編很早以前就發現到,這些基本的觀念問題存在 於許多許多面對繁重資訊茫然無措的資訊新人身上。我希望這幾頁 篇幅能對他們有點幫助。 ----------------------------------------------------------------- > 送件者: Hsin-Ji Wang <wat0130@top2.ficnet.net.tw> > 主旨: Thank you very much!! > 日期: 1997年3月17日 PM 08:30 > > 侯俊傑先生您好: > 我是台灣大學工學院的學生。最近我讀了RUN!PC上您回答李松輝先生的文章。在 > 文章中,您提到要把基礎打好,程式語言要從 C/C++ 學起。 我是指科班學生。不一定其他科系也都得研究基礎科學。 > 我想請問您,倒底 C, > C++,TURBO C 有什麼分別沒有?我之所以問這樣的問題,是因為我想學 C 已經很久 > 了,只是分不清楚這三者之間的分別。希望您可以告訴我他們的分別。又,如果我 > 想學 C,應該先學哪一種呢?可不可以請您推薦幾本書給我。謝謝。 > P.S.我學過的程式語言有 BASIC 和 FORTRAN。 C 和 C++ 都是一種程式語言。C 是結構化語言,它的動作是一行行執行, 但可以把一群動作包裝在一起,稱為函式。函式有一個入口,和一個(正常 情況下)出口,程式主架構就是由一個個的函式構成。這是結構化的基本精神。 C++ 則架構在 C 之上,也就是和 C 的所有指令、關鍵字都相容, 再加上物件導向的能力。它的一切物件導向性質,都是從 "class" 這個關鍵字開展。 程式架構是由一個個 classes 構成。也許有人會說是由一個個 objects 構成, 其實大家的意思是一樣的,class 是屬性,object 才是沿用該屬性的真正實體。 關於物件導向,說來就話長了。物件導向的精髓(像多型、虛擬函式) 並不容易,但學會了之後,使用別人寫好的 class library 卻很方便,你可以輕易 站在別人的肩膀上。MFC 或 OWL 或目前的當紅炸子雞 C++Builder 便都要求 使用者先有 C++ 能力。 所謂 Turbo C,只是「使用 Turbo 工具來學習 C」如此而已。Turbo 工具 是 Borland 公司的產品。一般而言前面冠上公司名稱的,就表示 和「產品」有關,而不是一種通用性的、一般性的學門或技術,例如 Borland C++、Microsoft Foundation Classes(MFC)、Symantec C++、 Borland C++Builder。 若論電腦語言,只能說 C 和 C++,沒有所謂 Turbo C 或 Turbo C++,或 Visual C++。「學習 Turbo C」就是「以 Turbo C 這套工具學習 C」的意思。 Turbo 工具(Borland 公司)常喜歡自己創造更新更前衛的機能, 逸出標準的語言範圍,所以面對這些特殊部份要特別 注意,以免同一個 C 程式在不同的編譯器產品上不能夠順利編譯。 如果你不在乎這一點,倒是可以放心大膽地使用更新更前衛的機能。 C 語言的學習過程,對我是遙遠的回憶。晚近這方面的書籍看得不多, 所以我沒有什麼關於書籍的建議可以給你。 > 非常謝謝您的回答,使我對於 C/C++ 有了些瞭解。 > 您提到 Turbo 工具是 Borland 公司所 > 研發的,他們喜歡創造更新更前衛的機能,而這些機能需要特別注意。 > 如果是這樣,那麼我學習 C 時,應該用什麼工具學習比較好呢? 我所謂要注意,意思是你自己得留心是否用了些「非語言標準的功能」,以後 移植(換工具)時才知道哪裡可能有問題。更新更前衛的東西可能是個正因素, 也可能是個負因素,端看你的考量和需求。好比說 Borland 的 Object Pascal 遠遠超出標準 Pascal 的範圍,你在學校學習 Niklaus Wirth 博士發明的 傳統 Pascal 語言,面對 Object Pascal 一定傻眼。但是 Object Pascal 功能強大。 用哪一種工具比較好,難說。若為了單純的 C/C++,任何產品都能勝任,因此學生 可以從售價上考量。若為計久長,C/C++ 之後還要學習 Windows 程式設計, 那麼又有兩種考量,一是以純粹的 raw API 寫 Windows 程式,那也是任憑 哪一種工具都能夠勝任,而且原始碼彼此相容。對於學生我還是認為價格是 最實際的考量因素。但如果要以 application framework(一種威力強大 的 C++ class library)來發展 Windows 程式,你就面臨抉擇了, 因為不同的 application framework(如 MFC 和 OWL)完全不相容。 最近幾版的 Borland C++ 宣稱可以吃 MFC 程式碼,我想這是沒有什麼意義的 事情,第一,它通常不能夠吃最新版的 MFC 應用程式碼,第二,你把 MFC 程式拿到 Borland C++ 環境下繼續開發,意義何在?一時吃進去了, 又能保證日後(你總是還要繼續發展的)相敬如賓嗎?還是會相敬如冰? 相敬如兵? 對於工具的選擇,工業界的考量點複雜得多,包括所謂 主流性(市場佔有率)、價格、穩定度、 速度、後續支援性。我不是說學生不在乎穩定度和速度,而是畢竟學生能寫出 多大的程式呢?如果有同學不服氣我這一點,我問各位:你寫過十萬行的大案子嗎? (寫過的同學不必回信給我,基本上你已經是專業程式員了) > 另外還有一個問題,最近好像很流行 Visual C++,不知道這東西與 C/C++ 有何 > 關係,可否請您告知? 近年來凡 Microsoft 的開發工具,都冠以 Visual 之名, 如 Visual C++、Visual Basic、Visual FaxPro。Visual C++ 的 意義就像 Borland C++ 一樣,只不過是某家公司出的 一套 C++ 軟體開發整合環境套件。 學習 Visual C++ 或 Borland C++,其實要學的是三樣東西: 1. C++ 語言。 2. 整合環境(Integrated Development Environment,IDE)的使用。 3. 一套 class library(在 Borland 為 OWL,在 Micorsoft 為 MFC)。這套 東西讓你很容易寫 Windows 程式(但我可沒說它們的學習很簡單唷)。 > 送件者: Evan <hungvan@ms7.hinet.net> > 主旨: 小生怕怕 > 日期: 1997年4月4日 AM 03:42 > > 侯先生您好: > 我是您的忠實讀友(自從看 RUN PC 之後),自覺自己對電腦有相當的興趣,但是總是 > 抓不著正確的學習方向,總覺得資訊一日千里,坊間又有許多令人目不暇給的書籍。想學 > 的很多卻沒有目標,所以總有些失落感。自從在 RUN PC 拜讀您的文章後,深深被您對資訊 > 專業及筆鋒所吸引,迫不及待的想將您所有的大作全都買回家,但發現你所著有很多。所 以 > 希望您能提供我您到底出了多少本書及它們的書名。對於想了解 Windows 作業系統及發展 > Windows 程式的我,盼望能獲得您的指導,我該以何種方式或順序來學習您的大作呢?至 > 於程式發展的語言該學習哪一種呢?雖然,略懂一些語言但總是不專,盼您也能提供我意 > 見。謝謝! 在雜誌上列出全部著作,有廣告之嫌。此項請免。我想回答您的第二個問題。 要使用哪個語言來學習 Windows 程式設計,這不是一翻兩瞪眼的事兒,請參閱 RunPC 1997 二月份的「到此躊躇不能去」一文。如果想 走 C/C++ 這條路線來學習程式設計,並且最終要進入 Windows 領域, 那麼我認為首先你要在 Console(DOS-like)模式把 C/C++ 的基本功練好, 千萬別這時候就接觸 Windows 程式設計。西諺有云「太多的廚子壞了一鍋湯」, 我要說「太多的配料也會搞壞一鍋湯」。由簡入繁還是一般人比較能夠接受的方式。 C/C++ 基本功練好之後,學習一點點 Windows SDK 程式 設計(也就是使用 raw API 寫程式)。不一定要完全動手寫,可以多看書並且 嘗試動手改一兩個程式,經歷一下編譯聯結的過程。這時候也還不要用 整合環境,宜使用命令列模式下的編譯器和聯結器。編譯聯結的過程可寫成 makefile,不會寫 makefile 的人可以寫 batch 檔。雖然不精緻,有什麼 關係呢,只是過渡期而已。 再來就真正進入會影響你日後工程師生涯的動作了。你可以挑選 Visual C++ 或 Borland C++ 或 C++Builder 或 Optima++ 或 IBM Visualage C++ 或 Symantec C++...,學習比 raw API 更高階的程式設計方法。說穿了其實是 選擇一個 application framework(MFC 或 OWL 或 VCL 或 Open Class Library 或...),那才是程式設計主戰場。整合環境雖然也需要一些時間去學習 熟練,但困難度不高啦。 學習這種 application framework,你必須把程式主軸搞得很清楚,才有辦法 游刃有餘地添骨添肉、解決問題。等到主軸的東西都清楚了,其他應用則泰半 只是看範例、查手冊的功夫而已,因為現成好用的 classes 會愈來愈多。 想寫個簡單的 Internet server 程式?簡單,MFC 的5個 classes 保送你上壘。 想寫個資料庫應用程式?簡單,MFC 的 DAO 和 ODBC classes 讓你 輕輕鬆鬆快快樂樂。 遺漏了一個大重點:Windows 作業系統。要把應用程式寫得好,作業系統的 基礎一定要有,否則遇到問題就可能像...像蒼蠅面對玻璃窗一樣, 近距離貼著玻璃亂飛亂舞,看起來很忙碌,卻不知道退一步看,原來旁邊 有一個窗口可以飛出去。 作業系統的知識一定要在程式設計過程中不斷地進修,與程式設計相配合。 RunPC 1997.03 的 <無責任書評/侯捷> 中介紹了三本很棒的 Windows 作業系統書籍。 > 送件者: Mcfee Woo <gega0624@ms7.hinet.net> > 主旨: 請給一位非本科的忠告! > 日期: 1996年3月13日 AM 01:39 > > 侯老師,您好: > 拜讀您幾本有關於 C++ 的書之後,又碰巧在這期 RUN!PC 看 > 到您所寫的一篇文章,文章中提到 "足夠用就好"。碰巧 > 本人是那種不務正業的學生(本科是電機,興趣卻是電腦), > 且學的是 C 語言,正努力向 C++ 及 JAVA 挺進,但讀完文章後,深 > 覺恐慌,畢竟非本科的學生總是少了那麼一點點專業知識,是 > 否應該立即放棄艱深難懂 C++ 而改學習 Visual Basic,使得學 > 習起來也許會快樂一點(C 的指標至今仍是我的惡夢)。不知侯老師 > 有何意見提供,畢竟老是舉棋不定還不如痛下心決定,蹉跎青春 > 也不是辦法。一位主觀意識不是很強的少年留。 關於學什麼東西才好,我仍是那句話:夠用就好。但是作為學生的你,又怎麼 知道是不是夠用了呢?這就困難些了,好好和師長同學們聊一聊吧,雜誌上 意長紙短難概敘。但是,切記,為自己的後路留一些餘裕,把自己壓緊一點, 是眼光更遠規劃更長的人的作法。 「快樂地學習」的確是一件非常重要的事。如何才能夠快快樂樂地學習呢? 你需要反省你的不快樂在哪裡。我有一些朋友, 他們專挑高難度的東西做:翻譯要翻奧秘級的書,寫作要寫核心層架構, 做專案則不只價格是個考量,有沒有挑戰性更是要點。他們希望自己在 那種情況下成長進步。感受自己一天天成長進步,是那種人莫大的快樂。 我自己,每天,睡覺前如果覺得「傳不習乎」,一定懊惱 24 小時 白過了(不過覺還是睡得香甜就是)。有種人馬上就譏諷像我們 這種人:『幹嘛,人活過得那麼痛苦』。哼哼,子非 魚,焉知魚之樂?但也不必反唇相譏:『整天醉生夢死只知享樂,活著 的意義在哪裡』,因為「子非彼,焉知彼之不知魚之不樂」? 基本上人從生物學劃分為紅黑黃白棕五色人種,沒有人企圖 把這五種人的生理結構、遺傳基因做平頭平等的比較(海地人是 AIDS 的高危險群, 黑人的身體密度不適合游泳競賽...),如果我們承認這五種 人不一樣(我們都這麼承認,不是嗎),我們也不必去說服不同人生觀與 價值觀的人,因為那是思想上的紅黑黃白棕。 說遠了。我意思是,你應該甚清楚你的性向。那麼,不快樂是因為確實不喜歡 那些很傷腦筋的東西,還是因為基礎不夠常常碰壁?如是前者,當然要 痛下決定避免蹉跎青春。如是後者,你需要好好徵詢師長的經驗,為你指出好的學習 順序,於是「觀古今於須臾,撫四海於一瞬,選義按部,考辭就班」,也就 不覺痛苦了。 如果你以為我認為 C/C++ 才有高難度,學習它人生才有意義,那誤會就大囉。 任何領域都有入門、進階、精專等等不同層次。C/C++ 之路的確特別坎苛些, 又因正是你的遭遇,所以提出做為例子。 > 送件者: b83125@ccstudent.ee.ntu.edu.tw > 主旨: Dear jjhou! > 日期: 1997年3月14日 PM 06:52 > > 傑哥: > 近來網路上討論熱烈 MFC 將被放棄。 > 我才剛學 MFC 就遭此打擊。我覺得從你的「深入淺出 MFC」的角度出發, > 最大收穫在於瞭解 class library 的實作以及 > Window 程式設計的方法及其歷史演進。至於 > BCB,可以讓人非常有成就感,滿足現代人的速食需求。但我懷疑它是否將 > 像各種 Wizard 或 Expert 一樣,產生出一堆號稱會 Windows 程式設計, > 卻也不過是點點滑鼠拉拉物件罷了。 > 不知您對這種 RAD 產品的看法如何。 BBS 上的許多消息,只能夠看看就罷。BBS 於我,就像報紙 影劇版一樣,最大的功能是提供一些話題娛樂,與某種參考。 對於純消息面而無技術面支撐的東西,消息純粹只是一種話題。 Visual C++ 5.0 將於五月七日推出。其程式設計主軸,也就是 MFC, 仍維持在 4.2 版(我偶而從文件中看到 4.21 這個號碼)。你知道我以及 我的不少朋友看到這個情況的心情嗎?喔,我們都鬆了一口氣! 你說我們這些「老一輩」的工程師是抗拒進步、不求長進嗎?我說呀,實務經驗 還嫩得很的學生的想法,和工業界老鳥的想法,中間有一道大峽谷。 如果你已經有產品上市賣了一兩個版本,有成千上萬的人在用你的軟體, 你絕對不會希望你所仰賴的程式主軸有什麼大變化。穩定中求發展的最理想情況, 以 class library 來說,就是不斷有新的、功能更強、涵蓋範圍更大、並且 與既有架構相容的 C++ 類別不斷加進來。主架構的東西不能夠三天兩頭 大變動,那會被人罵死,而且慢慢流失客戶。 所以即使 MFC 成長到 5.0、6.0、7.0,我判斷它的主軸仍然不會有變,只是累加 新類別而已,就像 MFC 從 2.5 進展到 4.0 再到 4.2,只是增加了一些 Internet 類別一樣。加的類別愈多愈重要,版本號碼就跳得愈遠一些。 回溯相容是最最重要的一件事。即將擁有戰場的尖兵們,這是你們的教戰守則第一條。 主架構會變動的情況只有一種,那就是原本客戶不多(所以包袱不大)。 這時候就有必要嘗試一下大破大立,看能不能夠扭轉乾坤。 OWL 的市場佔有率不高(這和它是不是好東西沒有關係),所以 Borland 乾脆靈活擺尾,推出新架構的 C++Builder。老客戶呢?罵就罵吧,沒辦法, 公司獲利比較重要,公司不獲利,橫豎是個倒,大家也別玩了。再說, 推出 C++Builder 可並沒有要把 OWL 回收,老客戶還是可以繼續以手上的 OWL 開發產品。只是在「沒有新版,就是退步」的觀念下,老客戶大概都會加入 咒罵的行列。罵就罵吧,沒辦法。 誰能夠接受新(而且優秀)的產品?沒有包袱的人是也,學生是也,新專案是也。 當學生進入工業界,遇到新專案,又遇到幾個志同道合的同事,新開發工具 的機會就來了。新產品唯有打入工業界,才有生命可言。教育市場再大,必會 受工業界影響。誰要學將來碰不到同好的技術?多寂寞!餓死人! 若要我比較 C++Builder 和 Visual C++,我覺得前者所使用的 Properties-Method-Event(PME)元件結構比較理想,容易做出視覺化開發環境, 得進 RAD(Rapid Application Development)之殿堂。 這話聽起來好像 Visual C++ 所使用的元件是什麼史前怪物似的。也不是, Visual C++ 所支援的 OCX 元件(OLE controls,現在叫 ActiveX controls), 也是 Properties-Method-Event(PME)結構。只不過 Visual C++ 的整合環境 沒有能夠把 PME 結構落實到程式設計過程與整合環境工具的互動上, 而 Visual Basic、Delphi、C++Builder 有。 C++Builder 的確很快給人成就感。但當你要為你所使用的 VCL 元件之間 建立一些些關聯時,「拖拉點放」四字訣就不管用了,你就要開始寫碼了。關鍵在這裡。 雖是短短三行,基礎不夠的話,挫折感可能會和先前的成就感一樣深唷。 開發工具的優劣不是看誰需要寫的程式碼少來決定,否則大家都去看 無字天書 -- 字最少,最好學。 工業界朋友老神在在,用什麼開發工具,他自有判斷能力,不會因為 BBS 上的消息而惶惶顫慄。學生則要加倍努力 -- 在此百花齊放的年代。 沒辦法,誰叫你們生長在資訊爆炸的時代。我雖然也「不幸」生長在此時代, 但是在我的人生剛從黑白變成彩色的時刻,電腦科技也才剛要開始它的璀燦, 我有機會與它一起成長,我有足夠的時間深植我的基礎,以接受它的驚人爆炸。 生得晚,生得早,都不如生得巧呀(呵呵,就讓我這種老人開心一下吧)。 > 這一個月來涉及 C++ 和 Windows 程式設計頗多,發現許多人 > 對此兩個領域的概念大多不清不楚,又胡亂寫書亂講話。使入門者喪失 > 了認知 C++(ANSI C++)的藝術與威力,又造成對 Windows > 程式設計一知半解。 2500 年前就發生過這種事情,於今尤烈。論語述而篇,子曰:「蓋有不知而作之者, 我無是也。多聽擇其善者而從之,多見而識之,知之次也」。意思是說「 有些人往往對事理一無所知,竟胡亂創作,我就不這樣。多聽別人說,多 選擇好的去依從,多看多記以備參考,這樣其實就可以算是次知了」。 (孔子以生而知之為上智,學而知之為次智) 我們的電腦書籍在創作方面有點問題,但情況不算荒謬,頂多是 大家慨嘆技術書籍和使用者入門書籍數量差距過大;早期有些抄襲現象, 在市場機能之下自自然然地浪淘盡千古人物。 翻譯方面則嚴重多多,因於許多高階技術的確需要大大倚賴翻譯書, 而我們長久對於翻譯存著不正確的態度(現在還有那種沒寫過 Java 卻可以包 兩章 Java 回來代工的情況),以及不肖出版人的撈錢心態(一本書拆 十個人譯,沒人願意掛名於是抓瞎來掛。到處找廉價學生代工,又沒有人統籌 全書技術與文字水平。負責任的譯者想要校稿卻遭拒,原因是會延誤 商機...哎,血壓有點昇高)。 現在還流行一種講敘電腦王國內部秘辛的書籍,基本上內容偏向 管理文化、企業文化。中譯本都不是由電腦書籍出版公司製作,而是 由讀者群更大眾化的圖書公司負責。其中爆笑內容亦頗具殺傷力,像 視覺培基(Visual Basic)、班級圖書館(Class Library)等等。 我不知道為什麼出版者對翻譯的態度如此。既然牽涉到專業領域, 稿子起碼要給專業人士看過,難道他們連這一點常識都沒有嗎? 三天前,我和一群朋友午餐。朋友丟出一個尖銳的題目:你認為 近年來的電腦書籍品質有沒有進步?呃,談進步要看全局。好書的比率 如果下降,就是沒有進步。 有沒有進步呢,親愛的朋友? 我也只能拾孔子的牙慧說:『多聽擇其善者而從之,多見而識之』。「侯子」的 意思是:「多聽聽別人對書籍的評語,口碑好的才買;多增加知識,以便 自己也有良好的判斷能力」。讀者、作者、譯者、出版社,都應該常常 逛 BBS 上的電腦書訊版(各 BBS 有 轉信功能,我本身是從清華大學的 140.114.87.5 進去)。最好有人設計一些 票選活動,把書訊版炒熱,讓它成為一個重要的輿論工具。如此,我想任何 從事寫作和出版的人都會有所警惕與鼓舞。 不過,網路票選好像可以做假。算了! > 依我的看法,要成為一個優秀的 Windows 程式設計者 > 是急不得的!他應該先對 C++ 有徹徹底底的認知, > 雖然剛開始只可能先寫寫 console mode 程式,但對日後的幫助非常大。 > 此後,再觀看各種工具,從中選擇一個最適合自己的整合開發環境, > 便能夠一舉踏入 Window 程式設計領域。中間的努力雖不足為外人道, > 但終有一天一定會明白努力沒有白費。畢竟 No pains, no gains! 總結到基礎面來,是的,不管怎樣,基礎打好最重要。C++ 先學好,再來 學 MFC 程式設計或 C++Builder 程式設計。作業系統的觀念要有, 而且常常補注新血。我以為,先在 console 模式(DOS-like 程式) 中厚植 C++ 的功力,然後才進入 Windows 程式設計領域,乃天經地義的事。 難道有人不是這麼想嗎?沒有人告訴各位正確的路線嗎?老師和學長都在 做什麼呢?還是我們不知道問?由 C 到 C++ 到 Windows 程式設計, 要開一個完整豐富不急就章的學程,以學校上課的鬆散度而言, 我想至少需要三學期 9 學分。有一所大學,資訊系大一新生一進來就開始學 C++, 而且是 Windows 程式設計(採用 MFC)。天,我為那些同學祈禱(也為老師 祈禱)。 最後,嗨,新新人類,我有點不能夠適應你叫我傑哥。叫傑叔比較符合我們的 年齡差距。昨天一位年輕貌美的女的朋友說我愈來愈年輕了,我沒有薰薰然。 你也不要認為這樣會讓我高興。聽到別人說自己年輕而會感覺高興的人,表示 他真的老了。 :-) > 送件者: chilong@csie.ncu.edu.tw > 主旨: 請問[元智的開課時間地點]... > 日期: 1997年4月16日 AM 03:41 > > 學生三年級起,便覺自己在電腦 > 各方面的領悟力真的很差,尤其程式更是要花人家的 2~3倍的 > 時間來鑽研,若是跟強到變態的人比更是差了10倍以上... > 常有強烈挫折感。有時會鼓勵自己說:"電腦只有後進與先進, > 我只是比較慢學而已..."。雖然偶爾寫出了個小程式便雀悅不已, > 但是與寫不出來的次數比較實在是小巫見大巫...。好玩的是, > 每當我想放棄寫程式,偏又有一兩個寫出來的程式讓我再度向前, > 如此停停走走...有些矛盾...實在很想知道似侯先生的電腦強人 > 的程度,甚至任何有關電腦的學習歷程到底是如何?? > 曾經問過系上老師,得到了個妙答:就是"突然頓悟,突然就會了"... > 哇~~太高深...就如同老和尚在讓小沙彌玩動動腦猜猜看遊戲一般。 > 不知侯先生對於這個問題的看法如何呢?? 學生真的很想知道。 「程式設計」當然也有天份的成份在(和任何其他領域一樣),不過, 任何資質平庸的人都可以經由努力而達到相當的水準。問題是「努力」 的程度。我唸研究所的時候,半夜出沒在系館中的絕大半都是老師。 現在我自己當了老師,我也覺得我比絕大半學生都用功。 我不是電腦強人,也沒有什麼天份,我只擁有和絕大部份人一樣的 「中人之資」而已。吾所到之處,君亦可至。  -- ※ Origin: 楓橋驛站 ◆ Mail: jjhou@ccca.nctu.edu.tw ("J.J.Hou") ※ X-Info: Mave -> ric.bbs@ptt.csie.ntu.edu.tw ※ X-Sign: 0ROAAR9PHSQPEMHu4Bjg (99/07/09 6:51:21 )