例程可以有参数,这不是新闻。您可以根据需要定义任意数量的参数,但过多的参数会使您的例程难以理解和维护。
当然,您可以使用结构化变量作为解决方法:将所有这些变量放在一个结构中并将其传递给例程。事实上,使用结构来简化参数列表是 Steve McConnell 在Code Complete中描述的技术之一。但正如他所说:
细心的程序员避免捆绑数据超出逻辑上的必要。
因此,如果您的例程有太多参数,或者您使用结构体来伪装一个大参数列表,那么您可能做错了什么。也就是说,您不会保持耦合松散。
我的问题是,我什么时候可以认为参数列表太大了?我认为超过5个参数,太多了。你怎么看?