• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Зачем Property уровня библиотеки?

S

Shandrik

Наткнулся на такую конструкцию в библиотеке:

Public Property Get getUltraPrivateObject As TObject
on error goto errh
set getUltraPrivateObject = m_privateObject
ex:
Exit Property
errh:
On Error Goto 0
Error Err,Error$ & " в " & Getthreadinfo(1) & " (l. " & Cstr(Erl) & ")"
End Property


Чем она отличается от обычной функции?
 
S

Shandrik

Да, вроде, можно ж и параметры передать.
 

savl

Lotus Team
28.10.2011
2 599
311
BIT
192
а, ну значит попутал, но в целом нет, ничем не отличается.
 

garrick

Lotus Team
26.10.2009
1 352
151
BIT
201
По моему это какое-то древнее наследие от ООП в Basic. Классы обладающие свойствами (Property) для чтения и установки этих свойств должны использовать Get и Set (Public доступ к Private полям класса?). Конечно это с успехом можно заменить обычными процедурами и функциями, но возможно раньше было нельзя (не уверен). А попала эта штука в LS из MS Visual Basic/VBA (там и сейчас ещё есть), а туда может ещё из какого-нибудь QBasic или какие-там ещё были.
 

Leoric

Lotus Team
15.10.2003
68
9
BIT
25
У нас к примеру подобная конструкция (property of library) используется как глобальная переменная NotesDatabase уровня библиотеки.

Это позволяет инициализироать эту переменную по факту обращения, а не заранее.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!