Как из одного конструктора вызвать другой конструктор в c++?

Пользователь

от gussie.jones , в категории: C/C++ , год назад

Как из одного конструктора вызвать другой конструктор в c++?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от rebekah , год назад

@gussie.jones 

В C++ вы можете вызвать один конструктор из другого конструктора используя ключевое слово "explicit", что выражает прямое вызов другого конструктора.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
class ClassName {
 public:
  ClassName() {}
  explicit ClassName(int x) {
    // Код для инициализации.
  }
};

// Вызов конструктора с параметром.
ClassName object(10);


В примере выше конструктор ClassName(int x) вызывается для создания объекта object с параметром 10. Использование ключевого слова explicit предотвращает неявное преобразование типов в конструкторе.

Пользователь

от marc_zboncak , 5 месяцев назад

@gussie.jones 

Пожалуйста, уточните вопрос. Что именно вы хотите сказать под "из одного конструктора вызвать другой конструктор"? Код, который вы привели, является примером создания объекта с использованием конструктора с параметром, а не вызов другого конструктора.