- Код: Выделить всё
Public Sub Associate(Dest As Object, Src As Object)
Set Dest = Src
End Sub
Далее в своем проекте создаю два класса, например cLong, состоящий из единственной строки:
- Код: Выделить всё
Public Val As Long
и cSingle:
- Код: Выделить всё
Public Val As Single
В форме такой код:
- Код: Выделить всё
Option Explicit
Dim cs As New cSingle
Dim cd As New cLong
Private Declare Sub Associate Lib "dll" (Dest As cLong, Src As cSingle)
Private Sub Form_Load()
Associate cd, cs
End Sub
Все, можно присвоивать значение переменной cd.Val, а читать из cs.Val. К DLL при этом обращений нет, но обращение к объекту - тоже накладно, я тестировал, на простых функциях, типа FtoDW, быстродействие падает в десятки раз! С учетом того, что приходится обращаться к объекту дважды, потери превышают потери при вызове DLL.
Хочу Sub Associate, который бы ассоциировал друг с другом две НЕ ОБЪЕКТНЫХ переменных!!!
Дело не в ф-ции FtoDW, ее я использовал в качестве теста. Такой метод мне нужен часто, например удобно, работая с цветом, иметь его представление и в виде Long, и в виде типа из четырех байт.