私がすることができます:
public class EnumerableTest : System.Collections.IEnumerable
{
System.Collections.IEnumerable data;
public EnumerableTest(System.Collections.IEnumerable d)
{
data = d;
}
public System.Collections.IEnumerator GetEnumerator()
{
foreach (object s in data)
{
yield return s;
}
}
}
しかし、私はこれを行うことはできませんか?:
public class EnumerableTestString : System.Collections.Generic.IEnumerable<string>
{
System.Collections.Generic.IEnumerable<string> data;
public EnumerableTestString(System.Collections.Generic.IEnumerable<string> d)
{
data = d;
}
public System.Collections.Generic.IEnumerator<string> GetEnumerator()
{
foreach (string s in data)
{
yield return s;
}
}
}
私が得るエラーは基本的に私がメソッドを逃していることを示しています
public System.Collections.IEnumerator GetEnumerator();
のリターンタイプをそれに変更するGetEnumerator()
と、行方不明と表示されます
public System.Collections.Generic.IEnumerator<string> GetEnumerator();
両方を含めようとすると、メソッド名が重複していることがわかります。
どうすればこれを解決できますか?