最近手にしたコードについて質問があります。C++ テンプレート パラダイムで、次の継承を行うことが正しいか、または有用かどうかを知りたいだけです (例として 3 つのクラスのみ)。
template< class I, class P, class D, unsigned int ID = 0 >
class PathFilter : public Filter< I, P, 1 >
{
...
}
template< class I, class A, unsigned int N = 1 >
class Filter : public Algorithm< I, A >
{
...
}
template< class I, class A >
class Algorithm : public A //This line
{
...
}
私の質問は、具体的には 3 番目の例の継承に関するものです。正確ではなく「一般的」にすることは有用ですか?より一般的なコードによって理解しやすいコードを妥協するのは良い選択ですか?
私は C++ テンプレートの専門家ではありませんが、テンプレートを使用してこのコードを理解するのは難しいと考えているためです (通常、テンプレートの名前はその内容について何も言いません)。何かアドバイス?