重温sunxin的VC++深入详解笔记(一)

第一章  Windows机制

重点记住六步窗口处理:

1)RegisterWndClass

2) CreateWndClass

3) ShowWindow

4) UpdateWindow

5) loop 

6) msg


第二章

主要要理解C++与C不同的地方

1)封装权限 类与Struct的区别

2)this 指针

3)重载 注意;同一作用域,参数类型/参数个数不同的函数才能重载

     以下两种情况不能重载

    (1)返回参数不同   void Output();

                                         int Output();

     (2)个数虽然不同,但存在参数默认赋值

                                         void Ouput(int a, int b = 0);

                                         void Output(int a);

4)  覆盖 必须是在父类和子类之间,函数一样

5)多态   注:指针的转换也会引起调用的对象不同,这是我唯一犯的一个错误。

      具体情况为:

               class animal; 有方法: void Output() {cout << "animal output"}

               class fish : public animal; 有同样方法: void Output() {cout << "fish output"}

               void fn(animal *pAn); 内容为 pAn->Output();

               在int main中 fish a;   fn(&a),问最后调用的是animal的Output方法还是fish的Output方法?

               这里虽然内存一样,但指针变了,所以应该调用animal的Output方法。——这里需切记。

               除非在animal的Output方法前加上virtual,这样才会调用fish的方法。

6)引用

7)CALLBACK 为__stdcall ,参数由右到左


第三章 MFC机制

1) WinMain在 vc98/MFC/src目录下的winmodule.cpp文件中,名字为_tWinMain,这里_tWinMain是个宏,实际就是WinMain

2)CMainFrame和CTestView都继承于CWnd类

    theApp全局对象,AfxGetApp()获得该指针

3)消息映射机制 头文件和CPP文件中都有包含


第十章 CDC

1) 线/椭圆/矩形  CFileDialog/CFontDialog/CColorDialog默认对话框

2) clw文件是classwizard生成的,出错可以删除,重新生成

3)图的切割

     三步走:

     (1)CBitmap bitmap; bitmap.LoadImage(IDB_BITMAP1)

      (2)CDC *pDC = new CDC;   CDC dc(&控件ID);   pDC->CreateCompatibleDC(&dc); pDC->SelectObject(&bitmap);

      (3)dc.BitBlt(NULL,0,0, x, y, pDC, 0,0,x,y,SRCCOPY);




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

灰暗角落里的琴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值