目前分類:C/C++ (7)

瀏覽方式: 標題列表 簡短摘要

⓪編著: 蕭沖

 

經實測VC6能夠使用最穩定的DirectX版本為 sum2004版,往後的版本因為有加入bufferoverflow的安全性問題函數,使得VC6無法正確編譯。

然而,在使用sum2004版的時候,確也發生了一個致命的問題,在網路上找了許久才在日本的網頁上找到答案… 此問題是

d3dx9.lib(fastftoa.obj) : error LNK2001:  "__aulldvrm"

aftcast 發表在 痞客邦 留言(0) 人氣()

⓪編著 : 蕭沖

extern "C" 是C++特有的組合關鍵字,在C裡並沒有這個的組合,僅有extern這個關鍵字!

為什麼C++會需要這樣的關鍵字組呢? 原因是C++它有一個複載(overloading)的功能,也就是說同樣的函式名稱可以有多個定義只要參數簽名不同即可。比如說C++裡可以有以下的二個宣告

bar(int i, int j);

bar(double i, double j);

aftcast 發表在 痞客邦 留言(3) 人氣()

⓪著作 :蕭沖


資料的變數是為了方便找資料(memory address 的alias)。
型別則是為了資料「取出後」該用什麼方式處理與呈現。

aftcast 發表在 痞客邦 留言(1) 人氣()

⓪編著 :蕭沖

時間:20060826


aftcast 發表在 痞客邦 留言(0) 人氣()

⓪著作 :蕭沖


我常用低階的語言觀點來看高階語言,我覺得那樣可以更深入的了解使用法方,堪至可以模擬出是如何實做的,可能遇到的問題。能想像Bjarne Stroustrup這個創造人當初可能是怎麼想的嗎?

aftcast 發表在 痞客邦 留言(1) 人氣()

⓪編著 :蕭沖


複習一下過去的學習。

aftcast 發表在 痞客邦 留言(0) 人氣()

⓪著作 :蕭沖


傳統C語言裡若要初始物件(結構體struct),需使用{ }陣列初始的方法來初始之。但已經不合用於cpp中的class型別,初始化的方式已有所不同。c中使用bitwise copy,一個byte一個byte的copy值。但class中有constructor,並非是簡單的bit copy就可以的。此外,C的其他型別都是用 = 號來初始值。在cpp中擴展了初始化的方法,即用()來做。如: ClassType obj(data); 為了和C的包伏問題,也可以使用 ClassType obj = data來代表同一件事。當然,當建構子的參數超過一個以上你就只能ClassType obj(data1, data2, data3);

aftcast 發表在 痞客邦 留言(1) 人氣()