C核心指南F2一个函数只处理一

免费多视频网站vip会员账号 https://www.kejixun.com/article/210908/535740.shtml

理由:

一个函数一次只处理一个逻辑上相关的操作,更容易理解、测试、重用。

例子:

voidad_and_print()//bad{intx;cinx;//checkforerrorscoutx"\n";}

这样的整块代码,需要特定输入,很难重用。相反,拆分成多个逻辑相关的函数,并参数化,更清晰,更可重用:

intad(istamis)//better{intx;isx;//checkforerrorsturnx;}

voidprint(ostamos,intx){osx"\n";}

这样,就可以根据需要组装函数:

voidad_and_print(){autox=ad(cin);print(cout,x);}

如果需要,还可以进一步将ad()和print()的数据类型,输入输出机制,错误处理等参数化。

autoad=[](autoinput,autovalue)//better{inputvalue;//checkforerrors};

autoprint(autooutput,constautovalue){outputvalue"\n";}

强化:

遇到有多个输出参数的函数,看看可不可以用返回值,或者用tuple返回多个值。

看到不能一个屏幕显示的函数,考虑是否可以拆分成命名良好、规模小的子函数

看到7个以上参数的函数,考虑是否能优化

C++核心指南是由C++创始人BjarneStroustrup和ISO/ANSIC++标准委员会秘书HerbSutter领导开发的关于如何正确高效使用C++的在线文档。就像C++语言本身一样,这些指南是许多组织中许多人多年讨论和设计的结果。

kimim


转载请注明:http://www.aierlanlan.com/rzdk/572.html

  • 上一篇文章:
  •   
  • 下一篇文章: