Person 12: Korinus gefilem Muh.eka.paputungan :Dosen: Ir. Hassanudin sirait,MT Person 12: Korinus gefilem Muh.eka.paputungan :Dosen: Ir. Hassanudin sirait,MT
6.12 Default Arguments Default arguments are passed to parameters automatically if no argument is provided in the function call. A function ’ s default arguments should be assigned in the earliest occurrence of the function name. This will usually mean the function prototype Default Arguments Default arguments are passed to parameters automatically if no argument is provided in the function call. A function ’ s default arguments should be assigned in the earliest occurrence of the function name. This will usually mean the function prototype.
Program 6-25 // This program demonstrates default function arguments. #include // Function prototype with default arguments void displayStars(int = 10, int = 1); void main(void) { displayStars(); cout << endl; displayStars(5); cout << endl; displayStars(7, 3); } Program 6-25 // This program demonstrates default function arguments. #include // Function prototype with default arguments void displayStars(int = 10, int = 1); void main(void) { displayStars(); cout << endl; displayStars(5); cout << endl; displayStars(7, 3); }
Program continues //************************************************************** // Definition of function displayStars. * // The default argument for cols is 10 and for rows is 1. * // This function displays a rectangle made of asterisks. * //************************************************************** void displayStars(int cols, int rows) { // Nested loop. The outer loop controls the rows // and the inner loop controls the columns. for (int down = 0; down < rows; down++) { for (int across = 0; across < cols; across++) cout << "*"; cout << endl; } Program continues //************************************************************** // Definition of function displayStars. * // The default argument for cols is 10 and for rows is 1. * // This function displays a rectangle made of asterisks. * //************************************************************** void displayStars(int cols, int rows) { // Nested loop. The outer loop controls the rows // and the inner loop controls the columns. for (int down = 0; down < rows; down++) { for (int across = 0; across < cols; across++) cout << "*"; cout << endl; }
Program Output ********** ***** ******* Default Argument Summary The value of a default argument must be a constant (either a literal value of a named constant). When an argument is left out of a function call (because it has a default value), all the arguments that come after it must be left out too. When a function has a mixture of parameters both with and without default arguments, the parameters with default arguments must be declared last. Program Output ********** ***** ******* Default Argument Summary The value of a default argument must be a constant (either a literal value of a named constant). When an argument is left out of a function call (because it has a default value), all the arguments that come after it must be left out too. When a function has a mixture of parameters both with and without default arguments, the parameters with default arguments must be declared last.
Program 6-25 / / Program ini menunjukkan argumen fungsi default. # include / / Fungsi prototipe dengan argumen baku displayStars void (int = 10, int = 1); void main (void) { displayStars (); cout << endl; displayStars (5); cout << endl; displayStars (7, 3); } Program 6-25 / / Program ini menunjukkan argumen fungsi default. # include / / Fungsi prototipe dengan argumen baku displayStars void (int = 10, int = 1); void main (void) { displayStars (); cout << endl; displayStars (5); cout << endl; displayStars (7, 3); }
Program terus / / ************************************************ ************** / / Definisi fungsi displayStars. * / / Default argumen untuk cols adalah 10 dan untuk baris adalah 1. * / / Fungsi ini menampilkan persegi panjang yang terbuat dari tanda bintang. * / / ************************************************ ************** displayStars void (int cols, int baris) { / / Bersarang lingkaran. Lingkaran luar mengontrol baris / / Dan loop batin mengontrol kolom. for (int bawah = 0; bawah <baris; bawah + +) { for (int di = 0; seluruh <cols, di + +) cout << "*"; cout << endl; } } Program terus / / ************************************************ ************** / / Definisi fungsi displayStars. * / / Default argumen untuk cols adalah 10 dan untuk baris adalah 1. * / / Fungsi ini menampilkan persegi panjang yang terbuat dari tanda bintang. * / / ************************************************ ************** displayStars void (int cols, int baris) { / / Bersarang lingkaran. Lingkaran luar mengontrol baris / / Dan loop batin mengontrol kolom. for (int bawah = 0; bawah <baris; bawah + +) { for (int di = 0; seluruh <cols, di + +) cout << "*"; cout << endl; } }
Keluaran Program ********** ***** ******* ******* ******* Argumen standar Ringkasan Nilai dari argumen default harus berupa sebuah konstanta (baik nilai literal dari sebuah konstanta bernama). Bila argumen yang tersisa dari panggilan fungsi (karena memiliki nilai default), semua argumen yang datang setelah harus ditinggalkan juga. Bila fungsi memiliki campuran parameter baik dengan dan tanpa argumen default, parameter dengan standar argumen harus dinyatakan lalu. Keluaran Program ********** ***** ******* ******* ******* Argumen standar Ringkasan Nilai dari argumen default harus berupa sebuah konstanta (baik nilai literal dari sebuah konstanta bernama). Bila argumen yang tersisa dari panggilan fungsi (karena memiliki nilai default), semua argumen yang datang setelah harus ditinggalkan juga. Bila fungsi memiliki campuran parameter baik dengan dan tanpa argumen default, parameter dengan standar argumen harus dinyatakan lalu.