C++ SWİTCH YAPISI
Bir switch ifadesi bir değişken değerler listesi karşı eşitlik için test sağlar. Her değer bir olgu denir ve değişken her durum için kontrol edilir açıldıktan sonra.
Sözdizimi:
C ++ bir switch deyimi için sözdizimi şöyledir:
switch (ifade) { durumda sabit ifade: ifade (s); break; / / isteğe bağlı durumda sabit ifade: ifade (s); break; / / isteğe bağlı / / Eğer durum açıklamalarının herhangi bir sayı olabilir. default: / / Opsiyonel ifade (s); }
Aşağıdaki kurallar bir switch deyimi için geçerlidir:
- Bir switch ifadesi kullanılan ifade ayrılmaz bir veya numaralandırılmış türüne sahip, ya da sınıf ayrılmaz bir veya numaralandırılmış türüne tek dönüştürme işlevi sahip olduğu bir sınıf türü olmalıdır.
- Bir anahtar içinde durum açıklamalarının herhangi bir sayı olabilir. Her durumda kıyasla gereken değeri ve iki nokta üst üste izler.
- Bir durum için sabit ifade anahtarı değişken olarak aynı veri türünde olmalı ve bir sabit veya bir sabit olmalıdır.
- Bir break deyimi ulaşılana kadar açık olan değişken bir durumda eşit olduğunda, bu durumda takip eden ifadeleri çalıştırır.
- Bir break deyimi ulaşıldığında, anahtar sona erer, ve kontrol akışını switch deyimi takip eden sonraki satıra atlar.
- Her durumda bir mola olması gerekiyor değil. Hiçbir ara görünürse bir ara ulaşana kadar, kontrol akışını sonraki durumlarda kadar düşecek.
- Bir switch deyimi, anahtarı sonunda yer almalıdır isteğe bağlı varsayılan durumda, olabilir.Varsayılan durumda Olguların hiçbiri doğru olduğunda bir işi yapmak için kullanılabilir. Hiçbir ara varsayılan durumda gereklidir.
Akış Şeması:
Örnek:
# Include <iostream> using namespace std; int main () { / / Yerel değişken bildirimi: karakter dereceli = 'D'; geçiş (grade) { case 'A': cout << "Mükemmel!" << Endl; break; case 'B': case 'C': cout << << endl "Aferin"; break; case 'D': cout << << endl "Geçtin"; break; case 'F': cout << << endl "iyi tekrar deneyin"; break; Varsayılan: cout << "Geçersiz sınıf" << endl; } cout << << sınıf << endl "Sizin kalitedir"; 0 dönmek; }
Bu şu sonucu üretecektir:
Sen geçti Sizin sınıf D