C ++ - Почему мы должны использовать явный в этом конструкторе?
Пожалуйста, обратитесь кВикипедия: шаблон стратегии (C ++)
class Context
{
private:
StrategyInterface * strategy_;
public:
explicit Context(StrategyInterface *strategy):strategy_(strategy)
{
}
void set_strategy(StrategyInterface *strategy)
{
strategy_ = strategy;
}
void execute() const
{
strategy_->execute();
}
};
Почему рекомендуется использовать явный для конструктора Context?
Спасибо