C ++ Programlama Varsayılan Bağımsız Değişkenleri (Parametreler)

Bu eğitimde, C ++ varsayılan argümanlarını ve bunların örneklerin yardımıyla çalışmalarını öğreneceğiz.

C ++ programlamada, fonksiyon parametreleri için varsayılan değerler sağlayabiliriz.

Varsayılan bağımsız değişkenlere sahip bir işlev bağımsız değişkenler iletilmeden çağrılırsa, varsayılan parametreler kullanılır.

Bununla birlikte, işlev çağrılırken bağımsız değişkenler iletilirse, varsayılan bağımsız değişkenler yok sayılır.

Varsayılan argümanların çalışması

Varsayılan bağımsız değişkenler C ++ 'da nasıl çalışır?

Varsayılan argümanların çalışmasını yukarıdaki görüntüden anlayabiliriz:

  1. Ne zaman temp()denir, hem varsayılan parametreleri işlevi tarafından kullanılmaktadır.
  2. Çağrıldığında temp(6), 6ikinci parametre için varsayılan değer kullanılırken ilk bağımsız değişken olur .
  3. Ne zaman temp(6, -2.3)denir, hem varsayılan parametreleri sonuçlanan geçersiz kılınır i = 6ve f = -2.3.
  4. Tüm temp(3.4)geçirilir ikinci bağımsız ilk argüman geçmeksizin geçilemeyen için fonksiyon istenmeyen bir şekilde hareket eder.
    Bu nedenle 3.4ilk argüman olarak aktarılır. İlk bağımsız değişken olarak tanımlandığından int, gerçekte iletilen değer 'dir 3.

Örnek: Varsayılan Bağımsız Değişken

 #include using namespace std; // defining the default arguments void display(char = '*', int = 3); int main() ( int count = 5; cout << "No argument passed: "; // *, 3 will be parameters display(); cout << "First argument passed: "; // #, 3 will be parameters display('#'); cout << "Both arguments passed: "; // $, 5 will be parameters display('$', count); return 0; ) void display(char c, int count) ( for(int i = 1; i <= count; ++i) ( cout << c; ) cout << endl; )

Çıktı

 Hiçbir bağımsız değişken geçilmedi: *** İlk bağımsız değişken: ### Her iki bağımsız değişken de iletildi: $$$$$

Bu program şu şekilde çalışır:

  1. display()herhangi bir argüman iletmeden çağrılır. Bu durumda, display()varsayılan parametreleri hem kullanır c = '*'ve n = 1.
  2. display('#')tek bir argümanla çağrılır. Bu durumda, ilk olur '#'. İkinci varsayılan parametre n = 1korunur.
  3. display('#', count)her iki argümanla çağrılır. Bu durumda, varsayılan argümanlar kullanılmaz.

Varsayılan parametreleri fonksiyon tanımının kendisinde de tanımlayabiliriz. Aşağıdaki program yukarıdakine eşdeğerdir.

 #include using namespace std; // defining the default arguments void display(char c = '*', int count = 3) ( for(int i = 1; i <= count; ++i) ( cout << c; ) cout << endl; ) int main() ( int count = 5; cout << "No argument passed: "; // *, 3 will be parameters display(); cout << "First argument passed: "; // #, 3 will be parameters display('#'); cout << "Both argument passed: "; // $, 5 will be parameters display('$', count); return 0; )

Hatırlanacak şeyler

  1. Bir parametre için varsayılan bir değer sağladığımızda, sonraki tüm parametrelerin de varsayılan değerleri olmalıdır. Örneğin,
     // Invalid void add(int a, int b = 3, int c, int d); // Invalid void add(int a, int b = 3, int c, int d = 4); // Valid void add(int a, int c, int b = 3, int d = 4);
  2. İşlev prototipi yerine işlev tanımında varsayılan argümanları tanımlıyorsak, işlev çağrılmadan önce işlevin tanımlanması gerekir.
     // Invalid code int main() ( // function call display(); ) void display(char c = '*', int count = 5) ( // code )

Ilginç makaleler...