Tavsiye, 2024

Editörün Seçimi

İf-else ile switch Arasındaki Fark

“If-else” ve “switch” her ikisi de seçim ifadeleridir. Seçim ifadeleri, koşulun “doğru” veya “yanlış” olup olmadığına bağlı olarak programın akışını belirli ifade bloklarına aktarır. İf-else ve switch ifadeleri arasındaki temel fark, if-else ifadesinin “if ifadelerindeki ifadenin değerlendirilmesine dayanarak ifadelerin yürütülmesini seçmesi” dir. Switch ifadeleri “genellikle bir klavye komutuna dayanarak ifadenin yürütülmesini seçer”.

Karşılaştırma Tablosu

Karşılaştırma için temelif-elseşalter
TemelHangi ifadenin çalıştırılacağı if ifadesinin içindeki ifadenin çıktısına bağlıdır.Hangi ifadenin yürütüleceğine kullanıcı karar verir.
ifadeif-else ifadesi, birden fazla seçenek için birden fazla ifadeyi kullanır.switch ifadesi, birden çok seçenek için tek ifade kullanır.
Test yapmakif-else ifadesi eşitlik ve mantıksal ifade için test eder.sadece eşitlik için ifade testi geçin.
Değerlendirmedeyim, tamsayı, karakter, işaretçi veya kayan nokta tipini veya boolean tipini değerlendirirse.switch ifadesi yalnızca karakter veya tam sayı değerini değerlendirir.
İcra SırasıEğer ifade çalıştırılacaksa veya başka bir açıklama çalıştırılacaksa.switch ifadesi, break ifadesi görününceye veya switch ifadesinin sonuna ulaşılıncaya kadar birbirini takip edin.
Varsayılan Yürütmeİfadeler içindeki yanlış ise, varsayılan olarak else ifadesi oluşturulursa çalıştırılır.Anahtar ifadelerinin içindeki koşul hiçbir durumda eşleşmiyorsa, bu durumda, varsayılan ifadeler oluşturulursa yürütülür.
kurguNested if-else ifadesi kullanılıyorsa if-else ifadesini düzenlemek zordur.Anahtar kutularını kolayca tanırlar, böylece kolayca düzenlenebilir.

İf-else'un tanımı

İf-else ifadeleri, OOP'deki seçim ifadelerine aittir. İf-else ifadelerinin genel şekli aşağıdaki gibidir.

 if (expression) {deyim (ler)} else {deyim} 

“if” ve “else” anahtar kelimeler ise ve ifadeler tek bir ifade veya bir ifade bloğu olabilir. İfade, sıfır olmayan herhangi bir değer için “doğru”, sıfır için “yanlış” olarak değerlendirilir.
İf ifadesinde bir tamsayı, karakter, işaretçi, kayan nokta ya da bir boole türü olabilir. Else ifadesi bir if-else ifadesinde isteğe bağlıdır. İfade doğru dönerse, deyim çalıştırılırsa içindeki ifadeler ve yanlış dönerse başka deyimin içindeki ifadeler çalıştırılır ve başka bir ifadenin oluşturulmaması durumunda herhangi bir işlem yapılmaz ve programın kontrolü atlar bir if-else ifadesi.

Bir örnekle anlamamızı sağlar.

 int i = 45, j = 34; if (i == 45 & j == 34) {cout << "koyu çikolata tercih ederim"; break; durum 2: cout << "şeker seçin"; break; durum 3: cout << "lolipopu seçersin"; break; . . varsayılan manşet << "hiçbir şey seçmiyorsunuz"; } 

Burada “i” değeri, hangi durumun yürütüleceğine karar verecektir, bir kullanıcı 1, 2 veya 3'ten farklı bir “i” değeri verirse, varsayılan durum yürütülür.

İf-else ve switch Arasındaki Temel Farklar

  1. İfadenin içindeki ifade, bloktaki veya blok altındaki ifadelerin içindeki ifadelerin yürütülüp yürütülmeyeceğine karar verir. Öte yandan, switch ifadesinin içindeki ifade hangi vakanın yürütüleceğine karar verir.
  2. Çoktan seçmeli ifadeler için birden çok if ifadesine sahip olabilirsiniz. Anahtar olarak, çoklu seçenekler için sadece bir ifadeye sahipsiniz.
  3. If-esle deyimi eşitliği ve mantıksal ifadeyi kontrol eder. Öte yandan, anahtar sadece eşitlik için kontrol eder.
  4. İf ifadesi tam sayı, karakter, işaretçi veya kayan nokta tipini veya boolean tipini değerlendirir. Öte yandan, switch ifadesi yalnızca karakteri veya bir tam sayı veri türünü değerlendirir.
  5. Yürütme sırası ya blok yapılacağının altındaki ifade ya da blok deyiminin çalıştırılacağı şeklindedir. Öte yandan, switch ifadesindeki ifade, hangi durumun yürütüleceğine karar verir ve her durumdan sonra bir break ifadesi uygulamazsanız, switch ifadesinin sonuna kadar yürütülür.
  6. İçindeki ifadenin yanlış olduğu ortaya çıkarsa, başka bir bloğun içindeki ifade çalıştırılır. Switch ifadesinin içindeki ifadenin yanlış olduğu ortaya çıkarsa, varsayılan ifadeler yürütülür.
  7. Düzeltmenin gerekli olduğu yerleri bulmak zordur, if-else ifadelerini düzenlemek zordur. Öte yandan, geçiş deyimlerini düzenlemek kolay oldukları için düzenlemek kolaydır.

Sonuç:

Switch ifadesinin düzenlenmesi kolaydır, farklı ifadeler için ayrı durumlar yaratır, oysa iç içe if-else ifadelerinde düzenlenecek ifadeleri tanımlamak zorlaşır.

Top