私が理解しているように、すべてのメンバ関数はDでは仮想ですが、コンパイラはオーバーライドされないと見なしても関数を非仮想にすることは自由です。メンバー関数がDで仮想であることを保証する方法はありますか?
私が明確にしていないのは、メンバー関数をオーバーライドしないモジュールをコンパイルし、そのモジュールをメンバ関数をオーバーライドする別の場所にインポートする場合です。私はそれが元のモジュールを再コンパイルするとは思わない。外部リンケージを持つ任意のメンバー関数が仮想であると単純に仮定していますか?