Aracılığıyla paylaş


Her, içinde

Bir dizi veya koleksiyonu yinelemek için for each deyimini kullanın.

Tüm Çalışma Zamanları

Sözdizimi

for each (type identifier in expression) {
   statements
}

Parametreler

  • type
    identifier Türü.

  • identifier
    Koleksiyon öğesini temsil eden yineleme değişkeni.identifier bir izleme başvurusu olduğu zaman öğeyi değiştirebilirsiniz.

  • expression
    Bir dizi veya koleksiyon ifadesi.Derleyici koleksiyon öğesini identifier türüne dönüştürebilir olmalıdır.

  • statements
    Yürütülecek bir veya birden çok deyim.

Notlar

for each deyimi bir koleksiyon içinde yineleme için kullanılır.Bir koleksiyondaki öğeleri değiştirmek mümkündür, ancak ekleyemez veya öğeleri silemezsiniz.

Dizi veya koleksiyon içindeki her eleman için İfadeler yürütülür.Koleksiyondaki tüm öğeler için yineleme tamamlandıktan sonra denetim for each bloğundan sonraki deyime aktarılır.

for each ve in içerik-duyarlı anahtar sözcüklerdir; bkz: Bağlama Duyarlı Anahtar Sözcükler (C++ Bileşen Uzantıları) daha fazla bilgi için.

Geliştirme ortamında, anahtar sözcüğü vurgulayarak (for each) ve F1 tuşuna basarak, F1 Yardımı alabilirsiniz.

Daha fazla bilgi için bkz.

Windows Çalışma Zamanı

(Bu dil özelliği için Windows Çalışma Zamanına özel bir açıklama yoktur.)

ms177202.collapse_all(tr-tr,VS.110).gifGereksinimler

Derleyici seçeneği: /ZW

ms177202.collapse_all(tr-tr,VS.110).gifÖrnekler

Örnek

Bu örnek, bir dize içinde for each ile nasıl yenileme yapılacağını gösterir.

// for_each_string1.cpp
// compile with: /ZW
#include <stdio.h>
using namespace Platform;

ref struct MyClass {
   property String^ MyStringProperty;
};

int main() {
   String^ MyString = ref new String("abcd");

   for each ( char c in MyString )
      wprintf("%c", c);

   wprintf("/n");

   MyClass^ x = ref new MyClass();
   x->MyStringProperty = "Testing";

   for each( char c in x->MyStringProperty )
      wprintf("%c", c);
}

Çıktı

  
  

Ortak Dil Çalışma Zamanı

Aşağıdaki tabloda Tüm çalışma zamanları bölümünde gösterilen C++/CLI'a özel sözdizimi arasındaki farkları listeler.

Parametreler

  • ifade
    Yönetilen bir dizi ifade veya koleksiyonu.Derleyici koleksiyon öğelerini Object öğesinden tanımlayıcı türüne dönüştürebilir olmalıdır.

    ifadeIEnumerable uygulayan bir tür değerlendirir IEnumerable<T>, veya GetEnumerator yöntemi tanımlayan bir tür.İkinci durumda, GetEnumerator IEnumerator veya IEnumerator içinde tanımlanan tüm yöntemleri bildiren bir tür döndürmelidir.

ms177202.collapse_all(tr-tr,VS.110).gifGereksinimler

Derleyici seçeneği: /clr

ms177202.collapse_all(tr-tr,VS.110).gifÖrnekler

Örnek

Bu örnek, bir dize içinde for each ile nasıl yenileme yapılacağını gösterir.

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

ref struct MyClass {
   property String ^ MyStringProperty;
};

int main() {
   String ^ MyString = gcnew String("abcd");

   for each ( Char c in MyString )
      Console::Write(c);

   Console::WriteLine();

   MyClass ^ x = gcnew MyClass();
   x->MyStringProperty = "Testing";

   for each( Char c in x->MyStringProperty )
      Console::Write(c);
}

Çıktı

  
  

Ayrıca bkz.

Kavramlar

Çalışma platformları için bileşen uzantıları