Parametry i argumenty procedur (Visual Basic)
W większości przypadków procedura wymaga pewnych informacji o okolicznościach, w których została wywołana. Procedura wykonująca powtarzające się lub udostępnione zadania używa różnych informacji dla każdego wywołania. Te informacje składają się ze zmiennych, stałych i wyrażeń przekazywanych do procedury podczas ich wywoływania.
Parametr reprezentuje wartość oczekiwaną przez procedurę podczas wywoływania. Deklaracja procedury definiuje jej parametry.
Można zdefiniować procedurę bez parametrów, jednego parametru lub więcej niż jednego. Część definicji procedury, która określa parametry, jest nazywana listą parametrów.
Argument reprezentuje wartość dostarczaną do parametru procedury podczas wywoływania procedury. Kod wywołujący dostarcza argumenty podczas wywoływania procedury. Część wywołania procedury określająca argumenty jest nazywana listą argumentów.
Poniższa ilustracja przedstawia kod wywołujący procedurę safeSquareRoot
z dwóch różnych miejsc. Pierwsze wywołanie przekazuje wartość zmiennej x
(4.0) do parametru number
, a wartość zwracana w pliku root
(2.0) jest przypisana do zmiennej y
. Drugie wywołanie przekazuje wartość literału 9.0 do number
metody i przypisuje wartość zwracaną (3.0) do zmiennej z
.
Aby uzyskać więcej informacji, zobacz Różnice między parametrami i argumentami.
Typ danych parametru
Typ danych dla parametru definiuje się przy użyciu As
klauzuli w jej deklaracji. Na przykład następująca funkcja akceptuje ciąg i liczbę całkowitą.
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
Jeśli przełącznik sprawdzania typów (instrukcja Strict Option) to , klauzula As
jest Off
opcjonalna, z tą różnicą, że jeśli którykolwiek z parametrów używa go, wszystkie parametry muszą go używać. Jeśli sprawdzanie typu to On
, klauzula jest wymagana As
dla wszystkich parametrów procedury.
Jeśli kod wywołujący oczekuje podania argumentu o typie danych innym niż odpowiadający mu parametru, na przykład Byte
do parametru String
, musi wykonać jedną z następujących czynności:
Podaj tylko argumenty z typami danych, które rozszerzają typ danych parametru;
Ustaw
Option Strict Off
wartość zezwalającą na niejawne konwersje zawężające; lubUżyj słowa kluczowego konwersji, aby jawnie przekonwertować typ danych.
Parametry typu
Procedura ogólna definiuje również jeden lub więcej parametrów typu oprócz normalnych parametrów. Procedura ogólna umożliwia kodowi wywołującego przekazywanie różnych typów danych za każdym razem, gdy wywołuje procedurę, dzięki czemu może dostosować typy danych do wymagań poszczególnych wywołań. Zobacz Ogólne procedury w Visual Basic.
Zobacz też
- z konkretnym obiektem
- Sub, procedury
- Procedury funkcji
- Procedury właściwości
- Procedury operatorów
- Instrukcje: definiowanie parametru dla procedury
- Instrukcje: przekazywanie argumentów do procedury
- Przekazywanie argumentów według wartości i według odwołania
- Przeciążanie procedury
- Konwersje typów w Visual Basic