Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Переменная ReadOnly в классе? / 7 сообщений из 7, страница 1 из 1
12.01.2004, 11:43
    #32372838
oops1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переменная ReadOnly в классе?
Подскажите пожалуйста, как сделать в классе переменную которую можно будет завадать изнутри класса, а читать снаружи,т.е. ReadOnly? В СИ это помоему что-то типа Protected, а в VB?
...
Рейтинг: 0 / 0
12.01.2004, 11:59
    #32372859
Hibernate
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переменная ReadOnly в классе?
private mTest As Long

Public Property Let Test(vNewData as Long)
Test = mTest
End Property
...
Рейтинг: 0 / 0
12.01.2004, 11:59
    #32372864
DIKI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переменная ReadOnly в классе?
Через свойства
...
Рейтинг: 0 / 0
12.01.2004, 12:01
    #32372867
CodeMastrer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переменная ReadOnly в классе?
В СИ это помоему что-то типа Protected, а в VB?


в Vb
'объявление
Dim s_myVariable as String


'доступ извне
Public Property Get myVariable() as String
myVariable=s_myVariable
End Property
...
Рейтинг: 0 / 0
12.01.2004, 12:14
    #32372894
oops1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переменная ReadOnly в классе?
Спасибо! Все ясно. Только чисто теоретически непонятно: чем отличается функция Public, которая возвращает параметр, объявленный как Private от Propery :-)
...
Рейтинг: 0 / 0
12.01.2004, 12:30
    #32372916
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переменная ReadOnly в классе?
>Только чисто теоретически непонятно: чем отличается функция Public, которая возвращает параметр, объявленный как Private от Propery

в данном случае действительно достаточно простого
private mTest As Long
но вслучае, если потребуеться делать доп. действа (проверка, например), то Проперти лучше

Public Property Let Test(vNewData as Long)
If mTest<0 then mTest=0
Test = mTest
End Property
...
Рейтинг: 0 / 0
12.01.2004, 15:19
    #32373265
Hibernate
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переменная ReadOnly в классе?
Спасибо! Все ясно. Только чисто теоретически непонятно: чем отличается функция Public, которая возвращает параметр, объявленный как Private от Propery :-)

физически - ничем.
А на уровне языка контроль типов - Property Get должен возвращать параметр того-же типа, что принимает Proprty Get (или Set). Плюс синтаксис при вызове - ты не можешь присвоить значение функции.
Да еще в выпадающем списке значек разный.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Переменная ReadOnly в классе? / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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