使用设置函数输入变量的方法将函数更改为 class

change function to a class with method for setting input variables of function

我正在为我的图书馆写 API。我有一个函数需要 5 classes 作为输入:

result func(A a,B b,C c,D d,E e);

我想将其更改为一个 class,一个一个地接受输入,然后 class 可以在所有输入设置时执行:

class func
{
void setA(A a);
void setB(B b);
.......
result execut();
}

我想知道这是个坏主意吗?

这是个好主意。因为在重写你的代码之后,你可以使这个 class.

的单元测试更容易

我认为从我的函数中创建一个 class 是个不错的主意,即使后来我发现该函数是更好的选择,我也可以在我的函数 class 像这样:

result Func(A a,B b,C c,D d,E e)
{
func f;
f.setA(a);
f.setB(b);
......
return f.execute();
}