- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第12讲
教学内容
6.1 数组
6.1.4对象数组
6.2 指针
6.2.1 内存空间的访问方式
6.2.2 指针变量的声明
6.2.3 与指针相关的运算符
6.2.8 指针作为函数参数
教学重点和难点
1对象数组的定义和初始化
2 指针变量的定义,作用
3 间接访问符号*的理解
4 指针的主要用途之一(作为函数的参数
教学方法:
在复习C中数组后的基础上,讲解对象数组的使用方法。
通过举现实生活的例子,讲解指针变量的作用。
通过程序演示,讲解指针变量的定义,*的理解。
通过程序演示,讲解对象指针,this指针,const修饰指针变量
教学学时
2 学时
教学过程
一 对象数组
a)每个数组元素都是一个对象,称为对象数组
b)声明:
类名 数组名[元素个数]
c)访问方法:
通过下标访问
数组名[下标].成员名
d)对象数组初始化
初始化对象数组时,系统会调用类的构造函数初始化该对象。
如果没有为数组元素指定显式初始值,数组元素便使用默认值初始化(调用默认构造函数)。
当数组中每一个对象被删除时,系统都要调用一次析构函数。
程序举例:
#include iostream.h
const int array_size(5);
class Point
{
private:
int x;
int y;
public:
Point()
{
cout default constructor called...endl;
}
Point(int xx, int yy)
{
x = xx;
y = yy;
cout constructor called...endl;
}
void ShowXY()
{
cout ( x , y ) endl;
}
~Point()
{
cout destroy called ... endl;
}
};
void main(void)
{
Point arp2[array_size]= {Point(1,2),Point(3,4),Point(5,6),Point(7,8)};//此时最后一个对象有默认初始值为(0,0)
//调用5次构造函数
for(int i = 0 ; i array_size; i ++)
{
arp2[i].ShowXY();
}
}
}//调用5次析构函数
二 指针变量的定义:
1内存的访问方式?
a)直接访问:
通过变量名来访问
b)间接访问(通过指针变量来实现):
变量的地址放在另一个内存单元中,先到另一个内存单元中取得变量的地址,再由变量的地址找到变量并进行数据存取
2什么是指针?
一个变量的地址称为该变量的指针
3什么是指针变量?
a) 首先是一个变量,也就是有变量的特点(占内存空间,这块内存空间对应一个变量名)
b) 这个变量只能存储地址
4指针变量的定义方式:
类型 * 指针变量名
5指针变量的三要素:
a) 指针变量的类型:
和其所指变量的类型一致;
b)指针变量的值:
另一个变量在内存的地址;
c) 指针变量的名字:
起法同普通变量。
三 两个重要的指针运算符号:
1符号:
通过可以取得一个变量的地址,则可以把这个地址赋给一个指针变量
(指针变量的赋值和初始化)
2*符号:---间接访问运算符
例如:int i;
int *p;
当p = i,也就是p与i之间建立了联系,p指向 了i, 此时访问i有两种方式:
a)直接访问:通过变量名i来访问
b)间接访问:通过p来访问i,
此时有 *p与i等价(理解这点很重要!)
程序举例1:写出下列程序的运行结果-----理解指针变量占多少内存空间
void main(void)
{
int* i;
double *j;
char * k;
Point * p;
cout sizeof(i) sizeof(i) endl;
cout sizeof(j) sizeof(j) endl;
cout sizeof(k) sizeof(k) endl;
cout sizeof(p) sizeof(p) endl;
//指针变量都占4个字节,与类型无关,指针的类型必须和所指变量的类型要一致。
}
程序举例2:写出下列程序的运行结果-----理解*的含义
void main(void)
{
int i(20);
int *p; //第一步:定义一个指针变量
p
您可能关注的文档
最近下载
- 《电气装置安装工程接地装置施工及验收规范+GB+50169-2016》详细解读.pdf
- THKA多回路智能工业调节器.PDF VIP
- 2025年广西专业技术人员继续教育公需科目(二)答案.docx VIP
- NDS世界树迷宫流程攻略及基础知识.pdf VIP
- 山西煤炭运销集团三百子煤业有限公司120万ta矿井兼并重组整合项目及配套120万ta洗煤厂环境影响报告书简本.doc VIP
- 苏州石刻《天文图》文字.pdf
- 中国气悬浮离心压缩机行业市场占有率及投资前景预测分析报告.pdf VIP
- 米家米家智能蒸发式冷风扇使用说明书.pdf
- 薄层砌筑和薄层抹灰工程施工技术方案.docx VIP
- 2024-2025学年中职语文基础模块 下册高教版(2023)教学设计合集.docx
文档评论(0)