当前位置:大学毕业论文> 本科论文>材料浏览

关于冗余论文范文写作 C编程中避免代码冗余的技巧相关论文写作资料

主题:冗余论文写作 时间:2024-04-05

C编程中避免代码冗余的技巧,本论文可用于冗余论文范文参考下载,冗余相关论文写作参考研究。

冗余论文参考文献:

冗余论文参考文献 如何避免论文查重论文怎么避免查重c类期刊参考文献硕士论文代码

摘 要: 编程的基本原则是尽可能避免代码重复.在程序编写的过程当中,涉及很多的结构比如循环、函数调用、类等,这很容易导致代码的冗余.该文以C++编程语言为例,列举了几种常见的代码重复的情况.并提出了相应的解决方案.

关键词: 循环;函数调用;类;代码冗余; C++

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2017)32-0101-02

Discussing Technology for Avoiding Code Duplication in C++ Programming

LI Lin

(School of Computer and Information Engineering, Luoyang Institute of Science and Technology, Luoyang 471023,China)

Abstract: The basic principle of programming is that oiding code duplication. During the progress of coding, many kinds of structures causes code duplication easily such as loop, function call, class.etc. This paper Based on C++ programming language, listed five common situations that induced code duplication and also provided the solutions.

Key words: loop; function call, class; code duplication; C++ programming

众所周知,在编程过程中因为各种原因会产生重复性的冗余代码.这些多余的代码往往会引起一些小的bug而不易被觉察到.原因在于它并不会影响最终的运行结果,却严重影响了执行效率.在有些函数被多次使用时,这种情况就更容易出现.本文以C++编程语言为例,列举了在编程过程中最常遇见的几种情况,用一个个具体的实例描述造成重复代码的原因.并提出了相应的解决方案.

1 函数大致相同,但是参数或者返回的类型不同

1) 举例描述:如图1所示,这里有2段代码.第一段代码是输出整型数据类的数组,第二段代码是输出双精度类型的数组.可以看到它们所要完成的功能是相同的,只是数据的操作类型不同.

2) 出现的问题:成员函数拥有相同的结构和作用,仅仅差别在实际操作的对象不同.造成一定程度的代码冗余.

3) 解決方案:利用C++提供的成员函数模板就能较好的解决这个问题.因为模板具有共通性.可以将相同的代码部分由模板参数定义获得.这样就能够针对不同的数据类型使用同一段代码完成.所以可以用下列代码(如图2)来完成:将原来数据类型的地方比如int用一个参数A代替,这样就抽象出一个模板.当实参的数据类型是整型时,编译器会自动用整型类型来替代类型参数A,如果实参的数据类型变为双精度型,那么编译程序又会用双精度型来替代类型参数A.

2 构造函数的重载

1) 举例描述:如图3所示,propertypage类有2个构造函数,他们的区别在于一个是无参数的构造函数,一个是有参数的构造函数.

2) 出现的问题:两个构造函数的成员初始化工作相同,只因为有无参数的差别,需要分别构建,导致代码冗余.

3) 解决方案:利用委托构造函数解决此类问题就是很好的做法.可以让其中一个构造函数在初始化的阶段调用另一个同类的构造函数,这样就可以由委托的函数代替完成初始化的工作,从而减少了代码的重复率.

3 在调用函数时遇到很长的参数列表

1) 举例描述:有的时候我们调用的函数参数会特别多

2) 出现的问题:,example( )函数被调用了3次,参数非常的多,3次函数调用中只有细微的差别.代码被大量重复.

3) 解决方案:利用绑定成员函数的方法来减少重复性代码.Std::bind是C++提供的一种很好的机制,可以用来绑定多个不同参数,其参数的类型和个数都不受限制,然后将其返回到另一个可以接收这些参数的函数.用于接收参数绑定值的可以是函数、函数指针、lambda表达式、成员函数等.下图6中参数Work使用占位符_1绑定,说明对done()的调用只需要提供一个参数即可.

4 小结

通过成员函数模板、委托构造函数、绑定成员函数等几种方法能较好的减少代码的冗余,让代码的结构更加清晰,执行率更高.当然,一味地减少代码不是最终目的,重要的是减少代码出现Bug的几率,从而便于后期的代码维护.

参考文献:

[1] 迈耶斯.Effective Modern C++[M].南京:东南大学出版社,2015.

[2] 任智康.c++中的函数模版和类模版[EB/OL].http://www.cnblogs.com/renyuan/archive/2013/05/26/3100047.html.

结论:大学硕士与本科冗余毕业论文开题报告范文和相关优秀学术职称论文参考文献资料下载,关于免费教你怎么写冗余方面论文范文。

基于C#自动生成PAC脚本实现服务器负载均衡和冗余
摘 要:IPv4地址资源不足,共享IP一般采用NAT、代理、反向代理等方式,在客户端数量较多的情况下,一般要考虑负载均衡与冗余的情况。文章介绍一。

BASIC早过时,孩童编程启蒙找乐代码学LiveCode
“80后的编程启蒙工具多是BASIC,而到了新世纪的移动时代,图形化编程工具LiveCode希望能够取而代之——不仅支持生成原生移动应用,同样可。

加码维C东北制药为哪般
升级产线4月5日,东北制药发布公告称,拟非公开发行不超9493 10萬股,募资不超14亿元。募集的资金将全部用来投入维C产线的搬迁及智能化升级。

关于C集团公司财务管控
摘要:随着经济的快速发展,集团公司已经成为现代企业管理中重要形式,但随着集团公司下属企业的增加,子公司组织层次愈加复杂化、经营业务愈加多元化,使。