C++使用struct参数代替函数而不是多个参数?

ste*_*km3 5 c++ struct function

有人认为使用类或结构传递参数有好处吗?

喜欢而不是

f(int,float,string)
Run Code Online (Sandbox Code Playgroud)

f(Args)
Run Code Online (Sandbox Code Playgroud)

其中Argsstructint,float,string会员.

Advantage很容易创建多个默认参数,并且在添加新参数时不必更改函数签名.

seh*_*ehe 5

明显的好处是对语义相关的数据项进行逻辑分组。

完成后,在结构上添加一些(成员)操作以保证您的不变量。

封装提高了代码的抽象级别,这使得维护/推理变得更容易。

见得墨忒耳定律


πάν*_*ῥεῖ 3

有人认为使用类或结构传递参数有好处吗?

是的,我认为有很多优点。

在函数上拥有大量参数列表会分散客户端代码对语义参数一致性的注意力,这可以在适当的structclass.

struct如果稍后需要添加其他(可能是可选的)参数,那么使用 a 也更灵活。