#arrays #vb.net #parameters
#массивы #vb.net #параметры
Вопрос:
Я пытался использовать значение из Sub PromptUser
in Sub Main
, но не могу. В нем говорится:
Аргумент, не указанный для параметра SaS
EmailAddress, studentName, SaS, не объявлен и может быть недоступен из-за уровня защиты
StudentName
, EmailAddress
и SaS
являются массивами:
Module Module1
Private StudentName(2) As String
Private EmailAddress(2) As String
Private SaS(2) As String
Public Sub PromptUser(ByVal StudentName() As String, ByVal EmailAddress() As String, ByVal SaS() As String)
For i = 0 to 2
Console.WriteLine("enter your name: ")
StudentName(i) = Console.ReadLine()
Console.WriteLine("enter your e-mail")
EmailAddress(i) = Console.ReadLine
SaS(i) = StudentName(i) amp; "#" amp; EmailAddress(i)
Next
End Sub
Sub Main()
Dim SSN1 As String
PromptUser(StudentName(), EmailAddress(), SaS())
For i = 0 to 2
Console.WriteLine("enter name to search: ")
SSN1 = Console.ReadLine()
If SSN1 = StudentName(i) Then
Console.WriteLine(SaS(i))
End If
Next
End Sub
End Module
Комментарии:
1. Вы не передаете
SaS()
параметр вPromptUser
sub. Вы вызываете его:PromptUser(StudentName(), EmailAddress())
всего с 2 аргументами; sub ожидает 3. Вам также нужно где-то инициализировать массивы. Вы не показываете, где.2. @Jimi итак, вы говорите, что я должен отредактировать его и сделать его PromptUser(studentName(), EmailAddress(), SaS())??? если это так, то это не сработало, и мне просто нужно имя и адрес электронной почты для 2-й части, а не SaS, пожалуйста, поправьте меня, что пошло не так
3. Покажите, где инициализируются эти массивы.
4. я не нашел никакого синтаксиса для вызова массивов в subs можете ли вы помочь мне, пояснив, что вы имеете в виду, показывая, где инициализируются массивы? @Jimi
5. Где вы объявили эти массивы? Что-то вроде: и т.д.
Private StudentName(2) As String
. Вы передаете их в качестве аргументов, но нигде не показываете, когда / где они были объявлены / инициализированы. Знаете ли вы, что означают эти последние два термина?