Prosedur Fungsi (Visual Basic)
Prosedur Function
adalah serangkaian pernyataan Visual Basic yang diapit oleh pernyataan Function
dan End Function
. Prosedur Function
melakukan tugas lalu mengembalikan kontrol ke kode panggilan. Saat mengembalikan kontrol, prosedur tersebut juga mengembalikan nilai ke kode panggilan.
Setiap kali prosedur dipanggil, pernyataannya berjalan, dimulai dengan pernyataan pertama yang dapat dieksekusi setelah pernyataan Function
dan berakhir dengan pernyataan End Function
, Exit Function
, atau Return
pertama yang ditemui.
Anda dapat menentukan prosedur Function
dalam modul, kelas, atau struktur. Prosedur ini Public
secara default, yang berarti Anda dapat memanggilnya dari mana saja di aplikasi Anda yang memiliki akses ke modul, kelas, atau struktur tempat Anda mendefinisikannya.
Prosedur Function
dapat mengambil argumen, seperti konstanta, variabel, atau ekspresi, yang diteruskan ke dalamnya oleh kode panggilan.
Sintaks deklarasi
Sintaks untuk mendeklarasikan prosedurFunction
adalah sebagai berikut:
[Modifiers] Function FunctionName [(ParameterList)] As ReturnType
[Statements]
End Function
Pengubah dapat menentukan tingkat akses dan informasi mengenai kelebihan beban, penimpaan, berbagi, dan pemberian bayangan. Untuk informasi selengkapnya, lihat Pernyataan Fungsi.
Anda menyatakan setiap parameter dengan cara yang sama seperti yang Anda lakukan untuk Sub Prosedur.
Jenis Data
Setiap prosedur Function
memiliki jenis data, sama seperti setiap variabel. Jenis data ini ditentukan oleh klausul As
dalam pernyataan Function
, dan menentukan jenis data nilai yang dikembalikan fungsi ke kode panggilan. Deklarasi berikut menggambarkan hal ini.
Function Yesterday() As Date
End Function
Function FindSqrt(radicand As Single) As Single
End Function
Untuk informasi lebih lanjut, lihat "Perilaku" di Pernyataan Fungsi.
Mengembalikan nilai
Nilai yang dikirim prosedur Function
kembali ke kode panggilan disebut nilai pengembaliannya. Prosedur mengembalikan nilai ini dengan salah satu dari dua cara:
Prosedur ini menggunakan pernyataan
Return
untuk menentukan nilai pengembalian, dan segera mengembalikan kontrol ke program panggilan. Contoh berikut mengilustrasikan langkah-langkah ini:Function FunctionName [(ParameterList)] As ReturnType ' The following statement immediately transfers control back ' to the calling code and returns the value of Expression. Return Expression End Function
Prosedur ini menetapkan nilai ke nama fungsinya sendiri dalam satu atau beberapa pernyataan prosedur. Kontrol tidak kembali ke program panggilan hingga pernyataan
Exit Function
atauEnd Function
dijalankan. Contoh berikut mengilustrasikan langkah-langkah ini:Function FunctionName [(ParameterList)] As ReturnType ' The following statement does not transfer control back to the calling code. FunctionName = Expression ' When control returns to the calling code, Expression is the return value. End Function
Keuntungan menetapkan nilai kembali ke nama fungsi adalah kontrol tidak kembali dari prosedur sampai menemukan pernyataan Exit Function
atau End Function
. Anda dimungkinkan untuk menetapkan nilai awal dan menyesuaikannya nanti jika perlu.
Untuk informasi selengkapnya tentang mengembalikan nilai, lihat Pernyataan Fungsi. Untuk informasi tentang menampilkan array, lihat Array.
Sintaks Panggilan
Anda memanggil prosedur Function
dengan menyertakan nama dan argumennya baik di sisi kanan pernyataan penugasan atau dalam ekspresi. Anda harus menyediakan nilai untuk semua argumen yang tidak opsional, dan Anda harus mengapit daftar argumen dalam tanda kurung. Jika tidak ada argumen disediakan, Anda dapat menghilangkan tanda kurung secara opsional.
Sintaks untuk mendeklarasikan prosedurFunction
adalah sebagai berikut:
lvalue=
functionname[(
argumentlist)]
If ((
functionname[(
argumentlist)] / 3) <=
Ekspresi) Then
Saat Anda memanggil prosedur Function
, Anda tidak perlu menggunakan nilai pengembaliannya. Jika tidak, semua tindakan fungsi dilakukan, tetapi nilai yang dikembalikan akan diabaikan. MsgBox sering disebut dengan cara ini.
Ilustrasi Deklarasi dan Panggilan
Prosedur Function
berikut menghitung sisi terpanjang, atau hipotenus, dari segitiga kanan, mengingat nilai untuk dua sisi lainnya.
Function Hypotenuse(side1 As Double, side2 As Double) As Double
Return Math.Sqrt((side1 ^ 2) + (side2 ^ 2))
End Function
Contoh berikut ini memperlihatkan panggilan khusus kehypotenuse
.
Dim testLength, testHypotenuse As Double
testHypotenuse = Hypotenuse(testLength, 10.7)
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk