> -- Владимир Лось писал(а):
> А если я - пользователь класса В и ожидаю, что, не смотря на обобщённый указатель (например в коллекции) у меня наследники будут иметь правильно инициализированные поля класса (которые через параметры по умолчанию получили свои значения)?

Для инициализации полей класса в C++ принято использовать конструкторы. А вообще в ООП - фабрики. И в конструкторах и в фабриках вы можете использовать параметры по умолчаниюВы же придумали какой-то новый способ - через дефолтовые аргументы виртуальных функций и удивляетесь почему оно не работает так, как вам хочется.

> -- Владимир Лось писал(а):
> Вы советуете "завести ещё одну виртуальную функцию?" ОК, посмотрим и на это.Во-первых, я могу не иметь доступа к исходникам класса А. Точка.

Значит дизайнер класса A не предполагал, что "дефолтовость" будет перегружаться. Мало того, пользователь класса A на такое тоже не расчитывает. Вообще в классе A можно много чего сделать не так и исходников не будет. Например сама функция могла быть невиртуальной. Так что ж теперь, требовать от языка возможности переделать все налету? Ну есть такие языки, у них есть свои проблемы

> -- Владимир Лось писал(а):
> Во-вторых, для "пользователя класса А", буде появляется параметр по умолчанию, УЖЕ ПРОСТО ПО СМЫСЛУ ВСЁ РАВНО, КАК БУДЕТ ПРОИНИЦИАЛИЗИРОВАН ЭКЗЕМПЛЯР А (ИЛИ ЕГО НАСЛЕДНИК). Собственно для того мы параметр по умолчанию и втулили. А вот пользователю класса В - уже - НЕТ, НЕ ВСЁ РАВНО. Теперь уже смысл факта  переопределения умолчания как раз в том, что экземпляры В чем-то и отличаются от экземпляров А (там одно умолчание, здесь - другое - всё ОК - "так задумано")... И - что? Получается, здесь язык ставит препоны для реализации нашего решения о различии?

В языке есть базовый механизм переопредения поведения - виртуальные функции. Вы хотите в добавок к этому механизму иметь виртуальность дефолтовых аргументов. Но такого механизма не сделали и по ряду причин. При этом оставили грабли в виде возможности переопределять дефолтовое значение в наследниках. Что вас не устраивает? Грабли сами по себе? Да, меня тоже они не устраивают. Невиртуальность дефолтовых аргументов? Так это легко достигается все через тот же базовый механизм.

> -- Владимир Лось писал(а):
> Пока, что Ваши доводы меня не убеждают. Может быть Вы, как более плотно работающий с этим, извиняюсь за выражение, языком программирования, укажете (по-конкретнее) на рассуждения автора языка или комитетчиков по поводу обоснования такого поведения?

Покажите мне язык, где имеется желаемое вами поведение для дефолтовых аргументов (со статической типизацией, естественно).