0

私はC#が初めてなので、これはばかげた質問かもしれません。

Dictionary を返す親クラスにメソッドがあります。問題は、2 つの異なる戻り値の型が必要なことです。

これが最初のものです:

Dictionary<string, string>

これが2番目です:

Dictionary<string, double>

親クラスのメソッドは次のとおりです。

public Dictionary<string, string> Read(string directoryWithFilesToRead, ref Dictionary<string, string> returnDict)
{
        return read(directoryWithFilesToRead, ref returnDict);
}

値引数のジェネリック型を作成し、メソッドを実装するクラスでオーバーライドすることは可能ですか?

使用できると思いますobjectが、キャストを避けようとしています(必要な場合は使用しますが、より良い方法があるかどうか疑問に思っていました)。

4

1 に答える 1

3
public Dictionary<string, T> Read<T>(string directoryWithFilesToRead, ref Dictionary<string, T> returnDict) {
        return read(directoryWithFilesToRead, ref returnDict);
}

で呼び出すRead<SomeObject>("dir", new Dictionary<string, SomeObject>();

ジェネリック メソッドに関するMSDN 。

于 2013-11-02T16:28:23.653 に答える