このテクニックを使用している他の開発者に気づいたことがありますが、それは常に私を混乱させました。私は今朝調査することを決めたと(http://msdn.microsoft.com/en-us/library/d5x73970(v=vs.100).aspxから)MSDNで次出くわし:タイプパラメータ制約はクラス
public class GenericList<T> where T : Employee
{
...
}
は、なぜ私たちはクラスで従業員とTのすべてのインスタンスを置き換えるのではなく、このメソッドを使用するのでしょうか?私には、これは保守性の勝利のようです。異なる継承階層のクラスを含める手段としてインターフェースに制限することは理解できますが、継承はすでに上の問題をより明白な方法で既に解決していますか?
これは間違いと見なされることがありますか、このようなコードを '修正'するのは間違いでしょうか?
を持っている場合、私はまだこの方法を見てきたと思います
を行うことができます非汎用的なアプローチがより適切である場合に使用され、私のビジョンがより受け入れられる用途にぼやけている可能性があります。 – Sprague
@sprague:例を挙げることはできますか?好ましくはlibから? –
@Henk Holterman:タイプパラメータが不必要な場合があると言うことで十分です。これはそのようなケースでしたが、私は主に、制約内に特定のクラスを持つ型パラメータの妥当なケースに興味がありました。私はそのような使用(あなたと他のおかげで、私は今やっている)の事例を理解するまで状況を判断してはいけませんでした。 – Sprague