К своему изумлению я только что узнал, что это законный C ++
struct A {
void foo(int) const = 0; // pure virtual
// ...
};
void A::foo(int) const { /* ... */ }
Каковы разумные варианты использования для этого? Т.е. когда будет вызван A::foo
и почему это правильная / лучшая реализация? Есть ли здесь различия между C ++ 03 и C ++ 11?
Хорошо, был предыдущий вопрос (который я не нашел) с тем же намерением. Однако это было до C ++ 11. Так что мой последний вопрос остается в силе.