C++语言教学中编码标准化问题浅析.docVIP

C++语言教学中编码标准化问题浅析.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C++语言教学中编码标准化问题浅析   摘要:C++程序良好的可移植性使得C++语言成为程序设计人员的首选工具语言,而保证这一特性必需使用标准化的C++编码。国内高校尤其是高职院校的教材中,存在着大量非标准化的C++程序,不利于培养具有标准化C++编程风格的学生。本文从C++发展史、教育工作者和教材规范化等多个角度出发,分析了这一问题产生的原因,并提出了相应的解决办法。   关键词:C++标准;可移植性;高等教育   中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)18-21ppp-0c      1 引言      1983年第一个C++程序投入使用,1994年8月,ANSI/ISO委员会草案登记,这便是业内所称的早期的C++标准,1998年11月,ISO/IEC:98-14882标准(以下简称98标准)被批准,标志着C++代码的标准化正式诞生[1]。C++语言诞生以来,延续了C语言的重要特征,即C++源程序良好的可移植性。正是这一特性,使得C/C++语言长期以来一直是程序开发人员的首选。   C++语言良好的可移植性是它具有较强生命力的关键所在。目前标准委员会正在修订C++标准,并拟于2009年发布修订后的09标准。可以预见,C++语言作为程序开发的主要工具仍将延续很长的一段时间。然而,国内高等教育尤其是高职教育,在C++语言的教学中却长期使用了非标准化的编码方式,这对于学生毕业后从事程序设计,写出具有良好可移植性的程序是相当不利的。   C++程序编码的标准化在互联网的一些论坛里有一些讨论,然而关于现行教材或专著里存在的问题,却鲜有文章进行报道。本文通过讨论现有高校教材尤其是高职教材中C++代码编写方式与现行C++标准的一些距离,试图引导高校教材尤其是高职教材中C++程序编码走向标准化。      2 标准化的目的和意义      标准化之争是信息时代商业竞争乃至国家之间竞争的必争之地。欧美的企业一直依赖都很热衷于标准化之争,UNIX从诞生到现在的各自为政就是一个很好的例子。而IT领域信息技术的高度集中和相对垄断也使得国际标准化组织制定的很多标准并没有被企业所采用,相反地,出现了很多像“Microsoft Windows”、“Internet Explorer”这种“事实上的工业标准”。C++语言从诞生到98标准诞生,花了整整15年的时间,对于发展迅猛的信息技术,这是一个相当漫长的过程。在此期间,国际上一些跨国公司如Microsoft、IBM、Borland(如今的Inprise)相继开发了自己的C++编译器,这些公司的编译器除了包含标准的C++编译器的内容之外,还加入了自己的一些特性,甚至修改了部分标准。一旦程序设计人员使用了这些非标准的特性,代码的可移植性将会成为一个大问题。因此,如何教导学生编写标准化的C++源程序,成为C++语言教学中一个非常重要的问题。      3 C++语言教学中存在的非标准化编码的主要问题      Microsoft公司曾经因为其在软件行业得天独厚的地位,而在MS Visual C++编译器中采使用了很多非标准化的内容。然而,在MS Visual Studio 2005发布之后,Microsoft公司相关人员特别指出该产品的一个重要变化就是完全符合98标准[2]。对于程序员来说,如果他原先在MS Visual C++中使用了非标准化的代码,在移植到MS Visual Studio2005这个平台上时将会花费相当大的精力去修改代码。即便是微软这样一个跨国企业,都不得不向国际标准靠拢,可想而知,标准化对于企业来讲是多么重要了。对于程序员,如何编写标准化的C++代码,保持C++代码的良好可移植性则是重中之重。然而,在我国的高校尤其是高职教材中却存在着甚至是大量存在着非标准化的C++程序,究其原因,笔者认为主要有如下几个方面:   3.1 C语言的影响   这也是最重要的一点。我国高校早期从事C++语言的教学和传播者主要是从C语言的使用者转移过来,C++语言的向下兼容性(即兼容C语言书写的源程序)使得这批教师能够较快的胜任C++语言的教学工作。不可否认,他们对中国高等教育的C++语言的教学和普及做出了不可磨灭的贡献。然而,C++语言所倡导的面向对象程序设计方法和C语言的面向过程程序设计方法还是存在着很大区别的,尤其是面向对象要求对数据进行封装保护的机制在C语言中是不存在的。而我们的第一批C++语言的传播者以及教材的编著者,却把C语言的风格和编程习惯带到了C++语言的教学中来,并且一直延续至今。例如:在C语言中主函数main是可以没有返回值的,即返回值类型可以是void,而在C++标准中,明确要求主函数main必须返回int类型。再

文档评论(0)

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

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

版权声明书
用户编号:5243141323000000

1亿VIP精品文档

相关文档