- 1、本文档共25页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 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
友元机制: 允许一个类将对其非公有成员的访问权授予指定的函数或类
优点: 在实现类之间数据共享时,减少系统开销,提高效率;
缺点:友元函数破环了封装机制,尽量不使用友元
您可能关注的文档
- (北京版)五年级语文上册稿件颐和园教材稿件.ppt
- (鲁教版)五年级语文下册稿件伯牙绝弦教材.ppt
- (人教新课标)三年级语文上册稿件秋天的雨(二)教材.ppt
- (西师大版)三年级语文上册稿件可爱的大熊猫教材.ppt
- (浙教版)三年级品德与社会下册稿件长江长城,黄山黄河教程.ppt
- (浙教版)三年级品德与社会下册稿件长江长城,黄山黄河文件材料.ppt
- “宝宝安康”教材教学稿件.ppt
- “你我参与防艾防结核”班会活动教材.ppt
- “三基”训练检验分册教材.pptx
- 《visualbasic程序设计与实训教程》第二章visualbasic概述教材.ppt
- 2025江浙沪居民睡眠健康小调研报告.pdf
- 毕业论文的开题报告范文.docx
- 团委活动方案(拓展).docx
- 汽车智能驾驶行业深度报告:端到端与AI共振,智驾平权开启新时代.pdf
- 小核酸行业深度:技术平台和适应症不断验证,迎来销售和临床密集兑现期-华福证券-2025.3.31-65页.docx
- 医药生物行业医疗AI专题报告二多组学篇AI技术驱动精准诊断实现重要突破-25031440页.docx
- CXO行业系列报告三寒冬已过行业需求逐步回暖-25031430页.docx
- 全国租赁市场报告2025年3月_可搜索.pdf
- 玩具行业“情绪经济”专题:创新玩法+IP赋能,重新定义玩具-华鑫证券-2025.docx
- 医疗保健行业PCAB抑制剂药物深度报告抑酸药物市场空间广阔PCAB抑制剂大有可为-25.pdf
文档评论(0)