インターフェイスメソッドと同じシグネチャで静的メソッドを定義することのメリットは、それを実装するクラスです。インターフェイスメソッドと全く同じシグネチャを持つ静的メソッドを持つC++クラスの利点
class IInterface
{
public:
virtual void fn()=0;
}
class Impl :IInterface
{
public:
~Impl();
static void fn();
}
Impl::~Impl{
}
Impl::fn(){
//do something
}
あなたはこれを見ましたか?あなたの例では、 'Impl'はまだ' IInterface :: fn'をオーバーライドしないので、抽象クラスです。 –
サードパーティのライブラリでこれをご覧ください。基本的に 'Impl'はラッパーです。 Impl :: fn acutllyの静的実装は、librayメソッドex:Impl :: fn(){:: fn()}を呼び出します。私は、インターフェイスは模擬テスティングをサポートすることだと思います。それはどのように役立つだろうか? – Somaraj