powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / возврат у функции
7 сообщений из 7, страница 1 из 1
возврат у функции
    #32687206
raur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем
может ли функция возвращать не 1 значение,

public function t (...) as long
...
t=...
end funsion

а несколько?
спасибо
...
Рейтинг: 0 / 0
возврат у функции
    #32687234
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
raurПривет всем
может ли функция возвращать не 1 значение,

public function t (...) as long
...
t=...
end funsion

а несколько?
спасибо
это достигается так :
1 - через параметры ByRef
2 - в качестве результата выполнения вернуть объект/массив/свой тип данных/и т.п.

2 способ имхо лучше (более гибкий)
...
Рейтинг: 0 / 0
возврат у функции
    #32687259
raur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1 - понятно
2 - можно примерчик возврата с массивом плиз
...
Рейтинг: 0 / 0
возврат у функции
    #32687314
marvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Sub TestFunct()
    Dim a( 1  To  4 ) As Long
    b = Funct1(a())
    Debug.Print a( 1 )
End Sub

Function Funct1(a() As Long) As Boolean
    a( 1 ) =  1 
    Funct1 = True
End Function
...
Рейтинг: 0 / 0
возврат у функции
    #32687317
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
Option Explicit

Private Sub Command1_Click()
    Dim a As Long
    Dim b As Date
    Dim c As String
    Dim arr1() As Variant
    
    arr1 = Sample()
    
    a = arr1( 0 )
    b = arr1( 1 )
    c = arr1( 2 )
    Debug.Print a
    Debug.Print b
    Debug.Print c
End Sub

Private Function Sample() As Variant
    Dim arr( 0  To  2 ) As Variant
    arr( 0 ) =  10 
    arr( 1 ) = Now
    arr( 2 ) = "sample"
    
    Sample = arr
End Function
Вот простой пример. Для понимания для всего заведены отдельные переменные.

PS: Но я бы вернул объект класса, а не массив.
...
Рейтинг: 0 / 0
возврат у функции
    #32687318
Hibernate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
raur1 - понятно
2 - можно примерчик возврата с массивом плиз

или так
Код: plaintext
1.
2.
3.
4.
public function t (...) as long()
dim f() as long
redim f ( 1  To  10 )
t = f
end Function
...
Рейтинг: 0 / 0
возврат у функции
    #32687349
raur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ухты,
как много!
спасибо всем, буду разбираться.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / возврат у функции
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]