第一種:
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中從變數到物件的連線稱作引用。也就是說,引用是一種關係,以記憶體中的指標的形式實現。具體而言 變數是乙個系統表...