C++ 为什么构建器模式比类';正在创建的对象是什么?

C++ 为什么构建器模式比类';正在创建的对象是什么?,c++,builder-pattern,C++,Builder Pattern,为什么我们不能在构造器中定义不同的构建步骤呢。 如果构建步骤采用参数,为什么不能将它们作为参数提供给构造函数,并在构造函数中用于创建对象 AFAIK,在Builder模式中,创建特定对象的客户端;那么,在创建的类对象中使用带参数的生成器而不是构造函数有什么好处呢!我明白了。我看了维基百科的例子,明白了为什么Builder很有用。当客户机不知道要传递给构造函数的参数时,这是很有用的,因为它非常复杂,因此无法直接调用构造函数并获取对象。因此,他向混凝土建设者寻求帮助,这些建设者知道应该将哪些参数传递

为什么我们不能在构造器中定义不同的构建步骤呢。 如果构建步骤采用参数,为什么不能将它们作为参数提供给构造函数,并在构造函数中用于创建对象


AFAIK,在Builder模式中,创建特定对象的客户端;那么,在创建的类对象中使用带参数的生成器而不是构造函数有什么好处呢!我明白了。我看了维基百科的例子,明白了为什么Builder很有用。当客户机不知道要传递给构造函数的参数时,这是很有用的,因为它非常复杂,因此无法直接调用构造函数并获取对象。因此,他向混凝土建设者寻求帮助,这些建设者知道应该将哪些参数传递给构造函数,从而创建对象

基本上,如果客户机主要将参数传递给创建对象的类的构造函数,那么构建器就没有那么大的帮助。使用原型可能更好。另一方面,如果有一个小的有限的特定对象集,可以通过向该类的构造函数(或调用setter)传递参数从该类创建,并且如果它们是经常使用的对象,然后最好将这个参数封装在Builder类中传递thingy,并使用它们为您创建对象