Параметры по умолчанию с конструкторами C++

Я бы выбрал аргументы по constructor умолчанию, тем более что ctor C++ не позволяет создавать coding-style цепочки конструкторов (так constructor что в конечном итоге вам function-overloading придется дублировать список method-overloading инициализаторов и, возможно, больше code-style для каждой перегрузки).

Тем code-style не менее, есть некоторые code-style ошибки с аргументами по умолчанию, в coding-style том числе тот факт, что константы clean-code могут быть встроены (и, таким coding-style образом, стать частью бинарного cpp интерфейса вашего класса). Еще code-style один момент, на который следует overload обратить внимание, заключается code-style в том, что добавление аргументов coding-standards по умолчанию может превратить overloading явный конструктор с несколькими cpp аргументами в неявный конструктор ctor с одним аргументом:

class Vehicle {
public:
  Vehicle(int wheels, std::string name = "Mini");
};

Vehicle x = 5;  // this compiles just fine... did you really want it to?

c++

constructor

coding-style

overloading

2022-08-20T15:19:35+00:00