Parameter dan Argumen Prosedur (Visual Basic)

Dalam kebanyakan kasus, prosedur membutuhkan beberapa informasi tentang keadaan di mana prosedur itu dipanggil. Prosedur yang melakukan tugas berulang atau bersama menggunakan informasi yang berbeda untuk setiap panggilan. Informasi ini terdiri dari variabel, konstanta, dan ekspresi yang Anda teruskan ke prosedur saat Anda memanggilnya.

Parameter mewakili nilai yang diharapkan prosedur untuk Anda berikan saat Anda memanggilnya. Deklarasi prosedur akan menentukan parameternya.

Anda dapat menentukan prosedur tanpa parameter, satu parameter, atau lebih dari satu parameter. Bagian dari penetapan prosedur yang menentukan parameter disebut daftar parameter.

Argumen mewakili nilai yang Anda berikan ke parameter prosedur saat Anda memanggil prosedur. Kode panggilan menyediakan argumen ketika memanggil prosedurnya. Bagian dari panggilan prosedur yang menentukan argumen disebut daftar argumen.

Ilustrasi berikut menunjukkan kode yang memanggil prosedur safeSquareRoot dari dua tempat berbeda. Panggilan pertama meneruskan nilai variabel x (4,0) ke parameter number, dan nilai pengembalian dalam root (2,0) ditetapkan ke variabel y. Panggilan kedua meneruskan nilai harfiah 9,0 ke number, dan menetapkan nilai pengembalian (3,0) ke variabel z.

Diagram that shows passing an argument to a parameter

Untuk informasi selengkapnya, lihat Perbedaan Antara Parameter dan Argumen.

Jenis Data Parameter

Anda menentukan jenis data untuk parameter dengan menggunakan klausul As dalam deklarasinya. Misalnya, fungsi berikut menerima string dan bilangan bulat.

Function appointment(ByVal day As String, ByVal hour As Integer) As String
    ' Insert code to return any appointment for the given day and time.
    Return "appointment"
End Function

Jika sakelar pemeriksaan jenis (Pernyataan Ketat Opsi) adalah Off, klausul As opsional, kecuali jika ada satu parameter yang menggunakannya, semua parameter harus menggunakannya. Jika pemeriksaan jenis adalah On, klausul As diperlukan untuk semua parameter prosedur.

Jika kode panggilan mengharapkan untuk menyediakan argumen dengan jenis data yang berbeda dari jenis data parameter yang sesuai, seperti parameter Byte ke String, kode tersebut harus melakukan salah satu hal berikut:

  • Hanya berikan argumen dengan jenis data yang melebar ke jenis data parameter;

  • Atur Option Strict Off untuk mengizinkan konversi penyempitan implisit; atau

  • Gunakan kata kunci konversi untuk mengonversi jenis data secara eksplisit.

Jenis parameter

Prosedur generik juga mendefinisikan satu atau beberapa parameter jenis selain parameter normalnya. Prosedur generik memungkinkan kode panggilan untuk meneruskan jenis data yang berbeda setiap kali memanggil prosedur, sehingga dapat menyesuaikan jenis data dengan persyaratan setiap panggilan individu. Lihat Prosedur Generik dalam Visual Basic.

Lihat juga