конструктор:
Vehicle(string name, int speed = -1.)
{
DefaultVehicleName = name;
DefaultVehicleSpeed = speed;
}
То есть по логике предусматривается, что speed может не вводиться, так как есть значение по умолчанию -1.
Есть дочерний класс Auto, а в нем конструктор:
Auto(string name, double speed) : Vehicle(name, speed) {}
И я создаю вектор Auto и в нем элемент:
automobiles.push_back(Auto("Automobile 1", 5));
Если убрать 5, то программа не заработает. Как сделать так, чтобы можно было 1 параметр вводить, и он аналогично Vehicle использовал параметр по умолчанию?
Параметр по умолчанию определяется для непосредственно вызываемой функции, если вызывается конструктор Auto, то и для него должен быть прописан
А как его прописать? Просто запись типа name=-1 в конструкторе Auto не работает.
speed = -1. в конструкторе Auto совершенно точно сработает
Спасибо большое! Просто видимо красная полосочка не сразу убиралась, и я подумал, что ошибка не исправлена 😂
Не стоит верить красным полосочкам, особенно в вижаке, там основной компилятор и компилятор интеллисенса разные
а еще вижаку нужно время
не знаю про время, но вот "возможен ли захват structure binding в 17м стандарте" они по-разному отвечают
Обсуждают сегодня