Рассмотрим следующий код, в котором я пытаюсь ввести конструктор по умолчанию, а также параметризованный конструктор для class A
. Этот способ был представлен в недавних улучшениях С++.
class A {
private:
unsigned int count;
public:
A(int new_c) : count(new_c) {}
A() : A(10) {}
};
по сравнению со старым способом установки параметра по умолчанию для параметризованного конструктора и полного игнорирования конструктора по умолчанию.
class A {
private:
unsigned int count;
public:
A(int new_c = 5) : count(new_c) {}
};
Есть ли какое-либо преимущество использования 1-го метода по сравнению со 2-м, кроме следования современным соглашениям?