面向对象C++语言关键概念教学探索及实践.docVIP

面向对象C++语言关键概念教学探索及实践.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象C语言关键概念教学探索及实践

面向对象C++语言关键概念教学探索及实践[摘要]C++语言是一门面向对象的高级语言,与C语言相比出现了很多新的概念,正确理解与应用这些新的概念是学好C++语言的关键。本文对引用与指针的概念以及使用方法的区别进行了详细的描述,还对普通指针、指向常量的指针和常指针三种指针所指向的内容和指针本身能否改变进行了对比,对基类中具有不同访问属性的成员经过不同方式继承之后在派生类中的访问权限也进行了比较,对不同重载方式下运算符重载函数参数的个数也进行了总结。通过对这些概念的理解和应用,可以提高大学生初学者和程序员的学习与编程能力。本文作者的教学实践表明,本文的关键概念教学实践起到了良好的教学效果。 [关键字]面向对象 C++语言 关键概念 教学探索 [中图分类号]G434 [文献标识码]A 一、引言 C++语言是在C语言基础上发展的一门面向对象的高级程序设计语言,全面兼容C语言[1]。C++语言采用面向对象的思想,将客观事物看作是具有属性和行为的对象,能够更为直接地描述客观世界中存在的对象以及它们之间的关系[2~3]。目前C++语言是大多数电子、信息、计算机等相关专业中非常重要的程序设计课程,也是这些大学生在学习后续专业课、进行毕业设计、以后上研究生或参加工作从事计算机软件开发的主要编程语言。本人在多年的教学探索与实践过程中发现,大学生对很多新概念的理解方面存在概念模糊、混淆不清的情况,这主要是C++语言有很多新的概念难以理解,仅凭大学生在初次学习时很难对这些概念实现准确理解和掌握,需要教师在授课前提前将这些概念进行备课总结,在上课时采用表格形式在多媒体课件中播放,这样能够极大提高学生对这些概念的领悟和理解能力[4]。本人根据多年的教学工作实践,总结出了多个大学生在学习时难以区分和理解的概念,例如引用与指针的概念的区别,普通指针、指向常量的指针和常指针三种指针的对比,以及公有、私有、保护三种继承方式的区别都进行了详细的比较,对不同重载方式下运算符重载函数参数的个数也进行了总结,为大学生的学习和教师的教学提供了有效参考。 二、引用与指针概念的区别 引用是面向对象的C++语言与C语言不同的一个重要概念,主要用于参数传递,引用的符号与C语言的指针取地址运算符、进行与操作的位运算符相同,需要进行区分。当符号出现在程序中,判断它究竟是引用、位运算符还是取地址运算符,可以首先看它是否为双目运算符,如果是双目运算符,则为位运算符,例如: 则上述程序中为位运算符。 取地址运算符和引用运算符都是单目运算符。取地址运算符是位于一个已经存在的变量的前面。 则上述程序中就是把整型变量a的地址赋给指针变量p。 引用是标识符的别名。引用是C++中的概念,初学者容易把引用和指针混淆一起。例如,下面程序中,b是a的一个引用,a 是被引用物。 程序中的b相当于a的别名(或称绰号),对b的任何操作就是对a的操作。所以b既不是a的拷贝,也不是指向a的指针,其实b就是a自己。 在下面的示例程序中,c被初始化为a的引用。语句c =b并不能将c修改成为b的引用,只是把c的值改变成为10。由于c 是a的引用,所以a的值也变成了10。 上面的程序看起来有点像在玩文字游戏,没有体现出引用的真正价值。其实,引用的主要目的和功能是传递函数的返回值和参数。在C语言中,函数的返回值和参数的传递方式只有两种:值传递、指针传递;而在C++语言中,函数的返回值和参数的传递方式有三种:值传递、指针传递和引用传递。 下面两个例子分别描述了指针和引用参数传递的用法: 1.采用指针进行参数传递的例子 2.采用引用进行参数传递的例子 1.从现象上看,指针在运行过程中可以改变它所指向的值,而引用一旦和某个对象绑定之后就不会再进行改变; 2.从内存分配上看,程序会为指针变量分配一定的内存区域,而引用是和一个已经存在的对象绑定,不会再分配内存区域; 3.从编译上看,指针可以改变所指向的对象(指针变量中的值可以改变),而引用一旦绑定一个对象后就不会再进行改变。 实际上“引用”可以做的任何事情“指针”也都可以实现,那为什么还要用“引用”这个概念?这是由于指针能够毫无约束地操作内存中的任何地址,尽管指针功能十分强大,但是非常危险,很容易把一些重要数据破坏。而引用在使用时只是和一个已经存在的合法的存储单元关联,不会产生一个空的引用。 三、指向常量的指针与常指针的区别 很多大学生在学习普通指针、指向常量的指针和常指针概念时混淆不清。由于指针功能十分强大,对上述各种指针概念不清楚,就很容易出现内存操作隐患。如果我们希望指针所指向的内容不被随意改变,可以声明指向常量的指针,此时不能通过指针来改变所指对象

文档评论(0)

docman126 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:7042123103000003

1亿VIP精品文档

相关文档