网站大量收购独家精品文档,联系QQ:2885784924

c教程类的设计和继承教材.ppt

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C++编程 2 课程目标 学习c++基本知识和技能 要求学员能正确的理解和运用c++基本知识和技能 6 第一部分 c++类的设计 第一节 引用 引用是变量的别名, 与被引用的变量表示同一个对象 通过引用可以改变被引用对象的值 引用必须被初始化 const引用表示被引用的对象是只读体 符号的多种含义 小结 引用的目的主要用于在函数参数传递中,解决大块数据或对象的传递效率和空间不如意的问题。 用引用传递函数的参数,能保证参数传递中不产生副本,提高传递的效率,且通过const的使用,保证了引用传递的安全性。 引用与指针的区别是,指针通过某个指针变量指向一个对象后,对它所指向的变量间接操作。程序中使用指针,程序的可读性差;而引用本身就是目标变量的别名,对引用的操作就是对目标变量的操作。 7 第一部分 c++类的设计 第二节 类的设计 通常将类的定义及类成员函数的声明放在头文件, 类的成员函数实现放在源文件中 类的定义: 关键字class, 类中包含数据和操作数据的函数 成员访问限定符: public, private, protected, 类的作用域 变量, 对象, 类, 类型的概念 类的构造函数, 析构函数 Inline函数:关键字inline 必须与函数定义体放在一起才能使函数成为内联,仅将inline 放在函数声明前面不起任何作用。定义在类声明之中的成员函数将自动地成为内联函数,内联是以代码膨胀(复制)为代价,仅仅省去了函数调用的开销,从而提高函数的执行效率。 This指针: this指针是类的一个自动生成、自动隐藏的私有成员,它存在于类的非静态成员函数中,指向被调用函数所在的对象的地址。全局仅有一个this指针,当一个对象被创建时,this指针就指向对象数据的首地址, this指针指向的是对象自身。 函数的重载:指在同一作用域内,可以有一组具有相同函数名,不同参数列表的函数,这组函数被称为重载函数。 多态: 多态性包含编译时的多态性、运行时的多态性两大类。 即:多态性也分静态多态性和动态多态性两种。 8 第一部分 c++类的设计 第三节 new和delete运算符用于动态分配和撤销内存的运算符 1.   开辟单变量地址空间 new的作用:分配足够的内存以便容纳所需类型的对象,调用构造函数初始化内存中的对象  1)int * a = new int;  //开辟一个存放数组的存储空间,返回一个指向该存储空间的地址.    2)int *a = new int(5); // 作用同上,但是同时将整数赋值为5 2.   开辟数组空间 一维: int *a = new int[100];//开辟一个大小为100的整型数组空间  二维: int(*a)[6]=new int[5][6]; Delete的作用: 调用对象的析构函数, 在释放对象 1. int *a = new int;      delete a;   //释放单个int的空间 2.int *a = new int[5];      delete [] a; //释放int数组空间 9 第一部分 c++类的设计 第四节 类型转换 隐式类型的转换 int a = 1; double b = 0.1 double c = a+b; 指针转换: int a[3]; int * b = a; 转换为bool 类型 算术值和指针值都可以转换为 bool 类型。 Int * a = 0; If(a) cout “a is true”; else cout “a is false”; 10 第一部分 c++类的设计 C++的显式转换 static_cast 程序员显式的强制类型转换 int a = 10; double b = static_castdouble(a); double c = (double)a; reinterpret_cast:为操作数的位模式提供较低层次的重新解释 int b = 1; int a = (int)b; int * pb = reinterpret_castint *(a); cout *pb endl; c语言旧式强制类型转换 type (expr); // Function-style cast notation (type) expr; // C-language-style cast notation 11 第一部分 c++类的设计 第五节 友元及static 友元机制: 允许一个类将对其非公有成员的访问权授予指定的函数或类 优点: 在实现类之间数据共享时,减少系统开销,提高效率; 缺点:友元函数破环了封装机制,尽量不使用友元

文档评论(0)

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

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

1亿VIP精品文档

相关文档