IEnumerator إلى الأدوية.
-
11-07-2019 - |
سؤال
ولدي بعض الفئات التي أحاول الانتقال إلى استخدام الأدوية
وCLASS1: المنحنى
وهذه الفئة لديها البرمجية التالية:
public class Curve : IEnumerable
IEnumerator IEnumerable.GetEnumerator()
{
return GetEnumerator(); // Calls non-interface method
}
public RTRatePointEnumerator GetEnumerator()
{
return new RTRatePointEnumerator(_hash);
}
والفئة 2:
public class CurvePointEnumerator : IEnumerator
ما هو تحويل الموصى بها من هاتين الطبقتين لاستخدام الأدوية
المحلول
وأنت لم يحدد نوع يتم إرجاعها من العداد. ولكن انا ذاهب الى تخمين استنادا إلى أسماء انها RTRatePoint وCurvePoint. وأود أن تغيير رمز لتكون على النحو التالي
class Curve: IEnumerable<RTRatePoint> {
IEnumerator<RTRatePoint> IEnumerable<RTRatePoint>.GetEnumerator() {
return GetEnumerator();
}
public RTRatePointEnumerator GetEnumerator() {
return new RTRatePointEnumerator(_hash);
}
}
class CurvePointEnumerator : IEnumerator<CurvePoint>
والبند الوحيد الذي قد رحلة لكم هو أن IEnumerator
void IDispose.Dispose() {
// Nothing to see here
}
نصائح أخرى
وIEnumerable<T> and IEnumerator<T>
وجاه، وابتلع قانون بلدي
لا تنتمي إلى StackOverflow