История изменений
Исправление X512, (текущая версия) :
Ты не заметил, что у них разные параметры?
В том и проблема, что при наследовании для каждой комбинации параметров надо писать отдельный конструктор и нельзя просто отнаследовать конструктор (на самом деле можно, но тогда нельзя будет добавлять новые конструкторы которых нет в базовом классе).
Получается дублирующий паттерн вроде
Derived(): Base() {}
Derived(int a): Base(a) {}
Derived(int a, int b): Base(a, b) {}
Derived(int a, int b, int c): Base(a, b, c) {}
То есть ты хочешь сказать, что если класс B наследован от класса A, то конструктор B не может вызвать конструктор A? Я правильно тебя понял?
Нельзя указать, чтобы наследовались конкретные (или все, но с возможностью добавлять новые) конструкторы без писанины вроде Derived(int a, int b, int c): Base(a, b, c) {}
.
Исправление X512, :
Ты не заметил, что у них разные параметры?
В том и проблема, что при наследовании для каждой комбинации параметров надо писать отдельный конструктор и нельзя просто отнаследовать конструктор (на самом деле можно, но тогда нельзя будет добавлять новые конструкторы которых нет в базовом классе).
Получается дублирующий паттерн вроде
Devived(): Base() {}
Devived(int a): Base(a) {}
Devived(int a, int b): Base(a, b) {}
Devived(int a, int b, int c): Base(a, b, c) {}
То есть ты хочешь сказать, что если класс B наследован от класса A, то конструктор B не может вызвать конструктор A? Я правильно тебя понял?
Нельзя указать, чтобы наследовались конкретные (или все, но с возможностью добавлять новые) конструкторы без писанины вроде Devived(int a, int b, int c): Base(a, b, c) {}
.
Исходная версия X512, :
Ты не заметил, что у них разные параметры?
В том и проблема, что при наследовании для каждой комбинации параметров надо писать отдельный конструктор и нельзя просто отнаследовать конструктор (на самом деле можно, но тогда нельзя будет добавлять новые конструкторы которых нет в базовом классе).
Получается дублирующий паттерн вроде
Devived(): Base() {}
Devived(int a): Base(a) {}
Devived(int a, int b): Base(a, b) {}
Devived(int a, int b, int c): Base(a, b, c) {}
То есть ты хочешь сказать, что если класс B наследован от класса A, то конструктор B не может вызвать конструктор A? Я правильно тебя понял?
Нельзя указать, чтобы наследовались конкретные конструкторы без писанины вроде Devived(int a, int b, int c): Base(a, b, c) {}
.