Aracılığıyla paylaş


Derleyici Hatası C3287

'type' türünün (GetEnumerator dönüş türü) uygun bir genel MoveNext üye işlevine ve genel Current özelliğine sahip olması gerekir

Açıklamalar

Kullanıcı tanımlı koleksiyon sınıfları ve MoveNextiçin Current tanımlar içermelidir.

Daha fazla bilgi için bkz . içindeki her birine.

Örnek

Aşağıdaki örnek C3287 oluşturur.

// C3287.cpp
// compile with: /clr
using namespace System;

ref struct R {
   bool MoveNext() {
      return true;
   }
   property Object^ Current {
      Object^ get() {
         Object ^ o = gcnew Object;
         return o;
      }
   }
};

ref struct R2 {
   R ^GetEnumerator() {
      R^ r = gcnew R;
      return r;
   }
};

ref struct T {};

ref struct T2 {
   T ^GetEnumerator() {
      T^ t = gcnew T;
      return t;
   }
};

int main() {
   for each (int i in gcnew T2) {}   // C3287
   for each (int i in gcnew R2) {}   // OK
}