報告,19 世界歐洲浪漫主義

Posted by MLChen at 痞客邦 PIXNET Comments(0) Trackback(0) Hits(24)

2009/04/06 口試

Posted by MLChen at 痞客邦 PIXNET Comments(0) Trackback(0) Hits(13)

考背課本

Posted by MLChen at 痞客邦 PIXNET Comments(0) Trackback(0) Hits(82)

記得看一下

Posted by MLChen at 痞客邦 PIXNET Comments(0) Trackback(0) Hits(60)

考這禮拜學的程式以及十誡

Posted by MLChen at 痞客邦 PIXNET Comments(0) Trackback(0) Hits(98)

考筆記內容,詳細情形再問同學

Posted by MLChen at 痞客邦 PIXNET Comments(0) Trackback(0) Hits(80)

記得印上課講義!

Posted by MLChen at 痞客邦 PIXNET Comments(0) Trackback(0) Hits(93)

C++ 發展歷史
Stroustrup工作起於1979年的C with Classes。這個構思起源於 Stroustrup 做博士論文時的一些程式撰寫經驗。他發現Simula具備很利於大型軟體開發的特點,但Simula的執行速度太慢,無法對現實需求發揮功效;BCPL雖快得多,但它過於低階的特性,使其不適於大型軟體的開發。當Stroustrup開始在貝爾實驗室工作時,他有分析UNIX核心關於分散式計算的問題。回想起他的博士論文經驗,Stroustrup開始為C語言增強一些類似Simula的特點。之所以選擇C,是因為它適於各種用途、快速和可移植性。除了C和Simula之外,同時也從其它語言中取得靈感,如ALGOL 68、Ada、CLU以及ML。剛開始時,類別、衍生類別、儲存類型檢查、內聯和預設參數特性,都是透過Cfront引入C語言之中。1985年10月出現了第一個商業化發佈。

1983年,C with Classes改命名為C++。加入了新的特性,其中包括虛疑函式、函式名和運算子重載、參考、常數、使用者可控制的自由空間儲存區控制、改良的類型檢查,以及新的雙斜線(//)單行註解風格。1985年,發佈第一版《C++程式設計語言》,提供一個重點的語言參考,至此還不是官方標準。1989年,發佈了Release 2.0。引入了多重繼承、抽象類別、靜態成員函式、常數成員函式,以及成員保護。1990年,出版了The Annotated C++ Reference Manual。這本書後來成為標準化的基礎。稍後還引入了模板、異常處理、命名空間、新的強制轉型,以及布林類型。

隨著C++語言的演變,也逐漸演化出相應的標準程式庫。最先加進C++標準函式庫的是串流I/O程式庫,其用以取代傳統的C函式,如printf和scanf。隨後所引入的程式庫中最重要的便是標準模板庫,簡稱STL。

多年後,一個聯合的ANSI-ISO委員會於1998年對C++標準化(ISO/IEC 14882:1998)。在官方釋出1998標準的若干年後,委員會處理缺陷報告,並於2003年發佈一個C++標準的修正版本。2005年,一份名為Library Technical Report 1(簡稱TR1)的技術報告釋出。雖然還不是官方標準的一部分,不過它所提供的幾個擴展可望成為下一版C++標準的一部分。幾乎所有目前仍在維護的C++編譯器皆已支援TR1。

雖然C++免專利,但標準檔案本身並不是免費的。



C++ 名字的由來
C++這個名字是Rick Mascitti於1983年中所建議的,並於1983年12月首次使用。更早以前,尚在研究階段的發展中語言曾被稱為「new C」,之後是「C with Classes」。在電腦科學中,C++仍被稱為C語言的上層結構。它最後得名於C語言中的「++」運算子(其對變數的值進行遞增)。而且在共同的命名約定中,使用「+」以表示增強的程式。Stroustrup說:「這個名字象徵著源自於C語言變化的自然演進」。C+是一個和C/C++無關的早期程式語言。

Rick Mascitti在1992年被非正式地問起名字的由來,他表示這是在半開玩笑中說出的。他從沒想過C++會成為這門語言的正式名字。

有一個關於C++名字的笑話是,當你使用後綴++時,附加只發生在運算之後(因此,它應該是++C,而不是C++)。


C++ 設計原則
在《C++語言的設計和演化》(1994)中,Bjarne Stroustrup描述了他在設計C++時,所使用的一些原則。知道這些原則有助於理解C++為何會是現在這個樣子。以下總結了一些原則,詳盡的內容可參閱《C++語言的設計和演化》:

C++設計成靜態類型、和C同樣高效且可移植的多用途程式設計語言。
C++設計成直接的和廣泛的支援多種程式設計風格(程式化程式設計、資料抽象化、物件導向程式設計、泛型程式設計)。
C++設計成給程式設計者更多的選擇,即使可能導致程式設計者選擇錯誤。
C++設計成盡可能與C相容,藉此提供一個從C到C++的平滑過渡。
C++避免平臺限定或沒有普遍用途的特性。
C++不使用會帶來額外開銷的特性。
C++設計成無需複雜的程式設計環境。


C++ 中的特色
和C語言相比,C++引入了更多的特性,包括︰陳述性宣告,類似函式的強制轉型,new/delete運算子,布林類型,參考類型,預設參數,函式重載,命名空間,類別(包括所有和類別相關的特性,如繼承、成員函式、虛擬函式、抽象類別和建構子),運算子重載,模板,::運算子,異常處理和執行時期識別。

和普遍認為的相反,C++不是第一個引入const關鍵字的。Const是在正式引入C語言不久之後,才被C++採用。

C++在某些案例中(見下「與C不相容之處」),進行比C還要多的類型檢查。

以「//」起始作為註解起源自C的前身BCPL,而後被重新引入到C++。

C++的一些特性,C不久之後也採用了,包括在for迴圈中宣告,C++風格的註解(使用//符號,和inline,雖然C99定義的inline關鍵字與C++的定義不相容。不過,C99也引入了不存在於C++的特性,如︰variadic macros,和以陣列作為參數的較佳處理;某些C++編譯器可能實作若干特性,以作為擴展,但其餘部分並不符合現存的C++特性)

一個常見的混淆其實只是一個微妙的術語問題︰由於它的演化來自C,在C++中的術語物件和C語言一樣是意味著記憶體區域,而不是類別實體,在其它絕大多數的物件導向語言也是如此。舉例來說,在C和C++中,語句int i;定義一個int類型的物件,這就是變數的值i將在賦值時,所存入的記憶體區域。

C++ 開發平台
Visual Studio, Borland C/C++ Builder

Posted by MLChen at 痞客邦 PIXNET Comments(0) Trackback(0) Hits(263)

範圍:區域網路

Posted by MLChen at 痞客邦 PIXNET Comments(0) Trackback(0) Hits(130)

Database 報告 12/3 (一) 交
內容: 設計一個 DB
大概內容技術在 8 -12 章

技術在 16 章之前

Posted by MLChen at 痞客邦 PIXNET Comments(0) Trackback(0) Hits(104)

1 2