Forich
探索未知
C++博客
首頁
新隨筆
聯(lián)系
聚合
管理
隨筆-14 評論-8 文章-0 trackbacks-0
【讀書筆記】GDI對象 的跟蹤與刪除
一直都不怎么注意 function 的返回類型,今天看到刪除GDI對象一文時,對保存舊GDI對象的代碼頗為不解,遂查之,無果。重讀之,恍然大悟!
先看看代碼:
1
void
CMyView::OnDraw(CDC
*
pDC)
2
{
3
CPen newPen(PS_DASHDOTDOT,
2
, (COLOREF)
0
);
//
2個像素寬的黑色Pen。
4
CPen
*
pOldPen
=
pDC
->
SelectObject(
&
newPen);
//
SelectObject返回的是上一個被選對象的指針,而不是當前的 &newPen。
5
pDC
->
MoveTo(
10
,
10
);
6
pDC
->
Lineto(
110
,
10
);
7
pDC
->
SelectObject(pOldPen);
//
newPen 落選
8
}
9
如第四行所示,原來SelectObject返回的是上一個被選對象的指針。當 newPen 落選之后,也就從設(shè)備環(huán)境中分離了,function 退出后,它就被自動銷毀了。
既然落選之后就可以被自動刪除,那么選擇其它GDI對象也能刪除自己創(chuàng)建的GDI對象。為了不造成內(nèi)存的浪費,我們可以選擇庫存的GDI對象,由于它們是系統(tǒng)的一部分,所以不用擔心它們會造成浪費:
1
void
CMyView::OnDraw(CDC
*
pDC)
2
{
3
CPen newPen(PS_DASHDOTDOT,
2
, (COLOREF)
0
);
//
2個像素寬的黑色Pen。
4
pDC
->
SelectObject(
&
newPen);
5
pDC
->
MoveTo(
10
,
10
);
6
pDC
->
Lineto(
110
,
10
);
7
pDC
->
SelectStockObject(BLACK_PEN);
//
newPen 落選
8
}
9
//
function 退出,newPen 被銷毀。
posted on 2008-10-16 13:11
崇文
閱讀(609)
評論(1)
編輯
收藏
引用
評論:
#
re: 【讀書筆記】GDI對象 的跟蹤與刪除
2016-04-22 15:45 |
崇文
2016年4月22日:回頭看自己寫的東西,有趣,尷尬。
newPen之所以被銷毀,是因為被CPen這個類包裝了,CPen的析構(gòu)函數(shù)應(yīng)該做了這個事,當然,手動解除newPen的占用是必要的。
說明當年我對c++的構(gòu)造、析構(gòu)等函數(shù)只有膚淺的理解。
作為一個審計人,重拾當初的夢想,我想我應(yīng)該回來了。不為什么,就為了一顆程序猿的心。
回復
更多評論
刷新評論列表
只有注冊用戶
登錄
后才能發(fā)表評論。
【推薦】100%開源!大型工業(yè)跨平臺軟件C++源碼提供,建模,組態(tài)!
網(wǎng)站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
<
2009年3月
>
日
一
二
三
四
五
六
22
23
24
25
26
27
28
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
常用鏈接
我的隨筆
我的評論
我參與的隨筆
留言簿
給我留言
查看公開留言
查看私人留言
隨筆檔案
2010年1月 (1)
2009年12月 (9)
2009年4月 (1)
2009年3月 (2)
2008年10月 (1)
相冊
一些圖
搜索
最新評論
1.?re: 一些圖
評論內(nèi)容較長,點擊標題查看
--崇文
2.?re: 《Inside Com》小結(jié)(一)
變形金剛2 也是很久遠的電影了,老了。
--崇文
3.?re: Boost 中的 BOOST_STATIC_ASSERT
2016年4月22日:在沒有看下面的內(nèi)容時,我居然能看懂template <>是第一條語句的特化版,有些東西真的像游泳騎車,難丟難忘,淚流滿面!
--崇文
4.?re: Write Bolg With Windows Live Writer Test
評論內(nèi)容較長,點擊標題查看
--崇文
5.?re: 【讀書筆記】GDI對象 的跟蹤與刪除
評論內(nèi)容較長,點擊標題查看
--崇文
閱讀排行榜
1.?TopCoder 練習題之排列(Permutation)(2061)
2.?《Inside Com》小結(jié)(一)(1223)
3.?Little thing about boost::mpl::if_(1051)
4.?boost 中的 vector 及其 operator+=(1014)
5.?對話框中的雙緩沖(882)
評論排行榜
1.?《Inside Com》小結(jié)(一)(3)
2.?【讀書筆記】GDI對象 的跟蹤與刪除(1)
3.?對話框中的雙緩沖(1)
4.?Write Bolg With Windows Live Writer Test(1)
5.?Boost 中的 BOOST_STATIC_ASSERT(1)
Powered by:
博客園
模板提供:
滬江博客
Copyright ©2025 崇文
少妇人妻88久久中文字幕
|
久久久久亚洲av无码专区喷水
|
香蕉久久av一区二区三区
|
婷婷久久综合九色综合绿巨人
|
久久精品亚洲AV久久久无码
|
国产色综合久久无码有码
|
99久久99这里只有免费的精品
|
国内精品免费久久影院
|
亚洲综合熟女久久久30p
|
热re99久久精品国99热
|
欧美一级久久久久久久大
|
中文字幕无码久久久
|
国产精品成人99久久久久
|
亚洲综合精品香蕉久久网
|
欧美精品一区二区精品久久
|
久久亚洲欧美国产精品
|
久久久久这里只有精品
|
国内精品伊人久久久久影院对白
|
嫩草伊人久久精品少妇AV
|
久久精品成人
|
久久久久无码专区亚洲av
|
久久久av波多野一区二区
|
无码人妻久久一区二区三区蜜桃
|
久久99久久99小草精品免视看
|
2021国内久久精品
|
精品多毛少妇人妻AV免费久久
|
久久国产免费直播
|
亚洲国产成人精品91久久久
|
国产精品99久久久久久董美香
|
久久久久无码中
|
91久久九九无码成人网站
|
国产69精品久久久久久人妻精品
|
国产精品美女久久久久AV福利
|
久久亚洲精品国产精品
|
精品久久久久久国产
|
欧美一级久久久久久久大
|
久久久国产精品
|
日韩美女18网站久久精品
|
热RE99久久精品国产66热
|
色偷偷91久久综合噜噜噜噜
|
污污内射久久一区二区欧美日韩
|