驚いたことに、以下が正当な C++ であることを知りました。
struct A {
void foo(int) const = 0; // pure virtual
// ...
};
void A::foo(int) const { /* ... */ }
これの賢明な使用例は何ですか? つまり、いつA::foo
呼び出され、なぜこれが正しい/最良の実装なのですか? C++03 と C++11 の間に違いはありますか?
さて、同じ意図を持つ以前の質問(私は見つけられませんでした)がありました。ただし、それはC++ 11より前でした。したがって、私の最後の質問は引き続き有効です。