すみません。
テンプレートクラスを型を指定して?継承することってできるんですか?

template<typename T> class Hoge
{
virtual T& Combine(T& other) = 0;
};

// そもそもこんなことできるのか
class Foo : public Hoge<Foo>
{
virtual /*どう書けばいいのか*/ Combine(/*ここもどうすれば*/);
};

教えてください。お願いします。