建立DirectDraw物件的三種方法

2021-06-07 19:04:31 字數 1077 閱讀 7400

第一種:

lpdirectdraw lpdd = null; // pointer to idirectdraw (temporary)

lpdirectdraw7 lpdd7 = null; // pointer to idirectdraw7 (what we want)

// get the idirectdraw inte***ce pointer

if (failed(directdrawcreate(null, &lpdd, null)))      //這裡給出對directdraw錯誤處理放法

// error-handling code here

// query for idirectdraw7 pointer

if (failed(lpdd->queryinte***ce(iid_idirectdraw7, (void**)&lpdd7)))

// error-handling code here

else

// success! release idirectdraw since we don't need it anymore

lpdd->release();

lpdd = null;

第二種:

直接使用com方法

lpdirectdraw7 lpdd7; // inte***ce pointer

// initialize com

coinitialize(null);

// create the object

cocreateinstance(clsid_directdraw, null, clsctx_all, iid_idirectdraw7, (void**)&lpdd7);

// initialize the object

第三種:

directdrawcreateex(

guid far *lpguid,

lpvoid *lplpdd,

refiid iid,

iunknown far *punkouter

);lpdd7->initialize(null);

詳細介紹參見:

物件的建立

建立乙個類,實際上是定義了一種新的復合資料型別。宣告該類的乙個變數,就是宣告該類的物件過程。建立物件包括物件的宣告和例項化兩步。1.物件的宣告 物件的宣告主要是宣告該物件是哪個類的物件,語法如下 類名 變數名列表 注 變數名列表可包含乙個物件名或多個物件名,如果含有多個物件名,物件名之間採用逗號分隔...

我的DirectDraw7學習之旅

我的directdraw7學習之旅 學習directdraw大概兩個月,這兩個月也是我系統地學習遊戲程式設計的兩個月。所以在這個時間段裡,我還學習了其他的東西,例如c 當然,c 不是容易學的,我只學了點皮毛 後來看 c 程式設計經典 看到滿世界的物件,頓時覺得自己的程式中的那些 物件導向 是多麼粗糙...

python建立新的物件和建立物件的引用

變數和物件存在記憶體中的不同部分,並通過連線相關聯。變數總是連線到物件,並且絕不會連線到其他變數上,但是更大的物件可能連線到其他的物件 例如乙個列表物件能夠連線到它所包含的物件 python中從變數到物件的連線稱作引用。也就是說,引用是一種關係,以記憶體中的指標的形式實現。具體而言 變數是乙個系統表...