Например, мы имеем следующую структуру:
class Base
{
[pure]
public virtual bool IsValid(/*you can add some parameters here*/)
{
//body
}
}
class Child : Base
{
public override bool IsValid(/*you can add some parameters here*/)
{
//body
}
}
Не могли бы вы заполнить Base::IsValid()
и Child::IsValid()
с разными телами, но без конфликтов с LSP? Представьте, что это просто метод анализа, мы не можем изменить состояние экземпляра. Можем ли мы это сделать? Меня интересует любой пример. Я пытаюсь понять, являются ли виртуальные (физические) логические методы анти-шаблонами или нет в общем случае.