- 1、本文档共187页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* Public protected private * struct 由 class 类似,但是其中的访问控制属性为public,而不是class的private。其他地方二者相同 * 因为类的静态成员函数只有一个运行实例 * 我是你的朋友!=你也是我的朋友 * 我是你的朋友!=你也是我的朋友 * 除非使用::运算符 * 编译器对名字从子类到基类解析(Display的调用距离子类的show函数最近),这样就会在找到子类的show函数后停止往基类寻找,从而忽略 基类的show函数。但是基类的show函数是存在的!不是说,被覆盖了就没有了。 * * * * * * * * 4. 类模板的实例化 与函数模板不同,类模板不是通过调用函数时实参的数据类型来确定类型参数具体所代表的类型,而是通过在使用模板类声明对象时所给出的实际数据类型确定类型参数。 编译时由编译器完成 例如,以下使用类模板声明了一个类型参数为int的模板类的对象: MyTemClass int intObject; 对于上面的对象声明: 编译器首先用int替代模板类定义中的类型参数T,生成一个所有数据类型已确定的类class; 然后再利用这个类创建对象intObject 。 5. 含有多个参数类模板的定义 template class T1,int i,class T2 class MyTemClass { . . . } 例如,声明模板类的对象应采用如下形式: MyTemClass int, 100, float MyObject ; 例 使用多个类型参数的类模板。 template class T1, class T2 // 使用2个类型参数 class MyTemClass // 定义模板类 { private: T1 x; T2 y; public: MyTemClass(T1 a, T2 b) { x=a; y=b; }; void ShowMax() { coutMaxMember=(x=y?x:y)endl; }; }; void main() { int a=100; float b=123.45F; MyTemClass int, float mt(a, b); // 声明模板类的对象 mt.ShowMax(); } 类模板 的实例化 作业:P1153-63,3-65 模板类与继承的关系 由模板生成的新类,实现的是对多个数据类型的重载,每个类中数据个数都是相同的,而且处理也是相同的; 由继承方式派生出来的类,数据个数可以不同,而且对数据的处理也可能会变化。 3.7 Microsoft Visual C++的语法扩充 经过多年的发展,C++有很多版本,微软公司就推出了不少C++编译器。微软公司最早推出的C++编译器是Microsoft C++(1.0版到8.0版)。1993年,微软推出了第一个可视化编译器即Visual C++ 1.0,以后不断推出它的新版本,2001年推出了Visual C++ 7.0。1998年,美国国家标准化协会ANSI和国际标准组织ISO联合正式制定了C++国际标准。Visual C++编译器除了遵循一般的C++标准,还结合自己的开发环境、工具和MFC类对C++语法进行了一些扩充。 3.7.1 Visual C++自定义数据类型 数据类型 意义 FAR 对应于far NEAR 对应于near CONST 对应于const BOOL 布尔类型,值为TRUE(真)或FALSE(假) UINT 32位无符号整形,对应于unsigned int BYTE 8位无符号整形,对应于unsigned char WORD 16位无符号整形,对应于unsigned short int DWORD 32位无符号长整形,对应于unsigned long int SHORT 短整形 LONG 32位长整形,对应于long LONGLONG 64位长整形 FLOAT 浮点型,对应于float CHAR Windows字符 VOID 任意类型 LPCSTR 32位字符串指针,指向一个常数字符串 LPSTR 32位字符串指针 LPVOID 32位指针,指向一个未定义类型的数据 LPARAM 32位消息参数,作为窗口函数或回调函数的参数 LPRESULT 32位数值,作为窗口函数或回调函数的返回值 LPCRECT 32位指针,指向一个REC
文档评论(0)