を実装するクラスがありますIEnumerator<string>
。下記参照:
public class MyClass : IEnumerator<string>
{
public bool MoveNext()
{
//....
}
//Implement other required methods....
//Confusion lies below:
public string Current { get { return this.CurrentLine; } }
//Why do I need to implement IEnumerator.Current?! In my tests, it's not even called during my iteration
object IEnumerator.Current { get { throw new NotImplementedException(); } }
}
IEnumerator<T>
.CurrentプロパティがインターフェイスとIEnumerator
(IEnumerator<T>
継承する)インターフェイスの両方に存在するという事実に加えて、それを実装するポイントは何ですか?上で見たように、それは呼ばれることさえありません。