KOD cpp: UKRYJ
array<String^ > ^ tab1 = gcnew array<String^>(20);
array<String^ > ^ tab2 = gcnew array<String^>(20);
array<String^ > ^ tab2 = gcnew array<String^>(20);
// Tu jakieś wartości dla elementów tych tablic
for each( String^ el1 and el2 and el3 in tab1 and tab2 and tab3)
{
// i dostęp do pierwszego elementu każdej tablicy, czyli iteracja przez 3 tablice na raz
}
array<String^ > ^ tab2 = gcnew array<String^>(20);
array<String^ > ^ tab2 = gcnew array<String^>(20);
// Tu jakieś wartości dla elementów tych tablic
for each( String^ el1 and el2 and el3 in tab1 and tab2 and tab3)
{
// i dostęp do pierwszego elementu każdej tablicy, czyli iteracja przez 3 tablice na raz
}
Podany przykład oczywiście nie działa, to tylko przedstawienie pomysłu. Za każdym razem jak trzeba przejść przez więcej niż jedną tablicę trzeba korzystać z pętli while lub for, a rozwiązanie tego typu było by chyba ciekawsze, przy założeniu że dane tablice mają ten sam rozmiar (a nawet jeśli nie to przecież na brakujących elementach mogą lecieć nullptr). To bardziej pytanie teoretyczne, a nie rzeczywisty problem, jednak chciałem się dowiedzieć czy można coś takiego zrobić. Oczywiście nie musi to być for each, może być jakiś inny sposób, który jednak pozwala przelecieć na raz przez kilka tablic.
-----
Można zrobić coś takiego
KOD cpp: UKRYJ
array<String^ > ^ tab1 = gcnew array<String^>(20);
array<String^ > ^ tab2 = gcnew array<String^>(20);
array<String^ > ^ tab3 = gcnew array<String^>(20);
Collections::IEnumerator^ x = tab1->GetEnumerator();
Collections::IEnumerator^ y = tab2->GetEnumerator();
Collections::IEnumerator^ z = tab3->GetEnumerator();
while(x->MoveNext() && y->MoveNext() && z->MoveNext())
{
x->Current;
y->Current;
z->Current;
}
array<String^ > ^ tab2 = gcnew array<String^>(20);
array<String^ > ^ tab3 = gcnew array<String^>(20);
Collections::IEnumerator^ x = tab1->GetEnumerator();
Collections::IEnumerator^ y = tab2->GetEnumerator();
Collections::IEnumerator^ z = tab3->GetEnumerator();
while(x->MoveNext() && y->MoveNext() && z->MoveNext())
{
x->Current;
y->Current;
z->Current;
}
Ale pobieranie enumeratora do każdej tablicy... to chyba jeszcze nie to