VC++深入详解_笔记要点.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VC深入详解_笔记要点

孙鑫《VC++深入详解》 学习笔记 2015年5月 目 录 一、C++基础 1 二、MFC框架程序剖析 4 三、简单绘图 5 四、文本编程 6 五、菜单 7 六、对话框(一) 11 七、对话框(二) 14 八、定制应用程序外观 15 九、绘图控制 16 十、图形的保存和重绘 17 十一、文件和注册表操作 18 十二、文档与串行化 19 十三、网络编程 20 十四、多线程 25 十五、线程同步与异步套接字编程 29 十六、进程间通信 34 十七、ActiveX控件 41 十八、动态链接库 44 十九、HOOK和数据库访问 49 一、C++基础 结构体: 类: 类与结构体的区别:除关键字不同(结构体为struct,类为class)外,更重要的是在成员的访问控制方面的差异。结构体默认情况下其成员是公有的(public);类默认情况下其成员是私有的(private)。在一个类当中,公有成员是可以在类的外部进行访问的,而私有成员就只能在类的内部进行访问了。 类与对象: 类描述了一类事物,以及事物所应具有的属性。 对象是类的具体实例。 构造函数: (1)C++提供构造函数用来对类中的成员变量进行初始化。规定构造函数的函数名和类名相同,没有返回值。 (2)构造函数的作用是对对象本身做初始化工作,也就是给用户提供初始化类中成员变量的一种方式。 (3)如果一个类中没有定义任何的构造函数,那么C++编译器在某些情况下会为该类提供一个默认的构造函数,这个默认的构造函数是一个不带参数的构造函数。只要一个类中定义了一个构造函数,不管这个构造函数是否是带参数的构造函数,C++编译器就不再提供默认的构造函数。也就是说,如果为一个类定义了一个带参数的构造函数,还想要无参数的构造函数,则必须自己定义。 注意:若一个类中没定义任何构造函数,编译器只在以下三种情况才会提供默认的构造函数 (1)如果类有虚拟成员函数或者虚拟继承父类(即有虚拟基类)时; (2)如果类的基类有构造函数(可以是用户定义的构造函数,或编译器提供的默认构造函数); (3)在类中的所有非静态的对象数据成员,它们所属的类中有构造函数(可以是用户定义的构造函数,或编译器提供的默认构造函数)。 析构函数: ~ 类名() 析构函数是反向的构造函数。不允许有返回值,更重要的是析构函数不允许带参数,并且一个类中只能有一个析构函数。用于清除类的对象。对于一个对象来说,析构函数是最后一个被调用的成员函数。 函数的重载: 类中函数名相同,但是参数的类型和个数不同的两个函数可以同时作为一个类的两个构造函数,C++编译器会根据参数的类型和参数的个数来确定执行哪一个构造函数。 构成函数重载的条件:函数的参数类型、参数个数不同,才能构成函数的重载。(注意:只有函数的返回类型不同是不能构成函数重载的,并且应注意函数带有默认参数的情况,如void oupt(int a,int b=5);) this指针: this指针式一个隐含的指针,它是指向对象本身的,代表了对象的地址。 类的继承: 当构造子类的对象时,它需要先构造父类的对象,调用父类的构造函数,然后再构造子类的对象。析构的时候是先析构子类对象,再析构父类对象。 多重继承: class 派生类名 : 访问权限 基类名,访问权限 基类名,访问权限 基类名 { …… } 多态性:在基类的函数前加上virtual关键字,在派生类中重写该函数,运行时将会根据对象的实际类型来调用相应的函数。 纯虚函数:指被标明为不具体实现的虚成员按函数(也可以由函数体,但是很少见)。凡是含有纯虚函数的类叫做抽象类,这种类不能声明对象,指示作为基类为派生类服务。在派生类中必须完全实现基类的纯虚函数,否则,派生类也变成了抽象类,不能实例化对象。 函数覆盖: 条件:(1)基类函数必须是虚函数(使用virtual关键字进行声明) (2)发生覆盖的两个函数要分别位于派生类和基类中 (3)函数名称与函数列表必须完全相同 函数隐藏:是指派生类中具有与基类同名的函数(不考虑参数列表是否相同) 两种情况:(1)派生类的函数与基类的函数完全相同(函数名和参数列表都相同),指示基类函数没有使用virtual关键字。此时基类的函数将被隐藏 (2)派生类的函数与基类的函数同名,单参数列表不同,在这种情况下,不管基类的函数声明是否有virtual关键字,基类的函数都将被隐藏。 注意:(1)当隐藏发生的时候,如果在派生类的同名函数中想要调用基类的被隐藏函数,可以使用——基类名::函数名(参数)——的语法格式 (2)函数的覆盖发生在派生类与基类之间,两个函数必须完全相同,并且都是虚函数。除此之外就是隐藏了。 引用:就是一个变量的别名,需要用另一个变量或者对象来初始化自身。用表示申明一个

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档