仮想メソッドがすべてのサブクラスの特定のプロパティを満たすことをアサートするテスト ケースを生成したいと考えています。これを自動化するにはどうすればよいですか?
class A {
virtual int foo() = 0;
};
class B : public A {
virtual int foo() override;
};
class C : public A {
virtual int foo() override;
};
私は何かをしたいです(私は以下の構文がゴミであることを知っています)
for (A : SUBCLASSES_OF(A))
{
A a;
assert(a.foo() == 42);
}
ブースト/テンプレート メタプログラミング/マクロ マジックでもそれは可能ですか、それともここでの推論に大きな誤りがありますか?