[C++的十万个为啥] [17]一个函数到底多少行合适?程序中的技术和艺术,内容决定形式

[C++的十万个为什么] [17]一个函数到底多少行合适?程序中的技术和艺术,内容决定形式
原文来自
http://chenlq.net/17-a-function-in-the-end-how-many-lines-technology-and-the-arts-program-the-content-determines-form.html

Q:

在[9]不要写像王寡妇的裹脚布一样又臭又长的main()函数一文中,我阐述了不应该将main()函数写的太长的观点,于是有朋友提出,那么到底多少行合适呢?是100行还是150行?

A:

到底多少行合适,并不能一概而论。
我在前一篇文章中提出的“不应该太长”,只是一个原则性的要求,而具体多少合适,则要跟具体实际情况结合起来。通常来讲,一个函数保持在100-150以内比较合适,而在一些特殊情况下,也有例外,比如某些case分支情况多的时候,如果这时为了满足100-150行的限制,而硬生生地将一个switch语句拆分,结果造成函数四分五裂,这反倒是得不偿失了。所以,应把握的是“不宜太长”这个基本原则,而具体多少合适,则根据实际情况(代码的业务逻辑,个人的水平习惯等)而定。任何的规定一个固定的行数,都是教条化的一个体现。

为什么不能规定一个固定的行数?

阅读全文
http://chenlq.net/17-a-function-in-the-end-how-many-lines-technology-and-the-arts-program-the-content-determines-form.html

------解决方案--------------------
推荐楼主阅读
《代码大全》