Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Можно ли передать UDType как опциональн. параметр Добавлено: 24.08.06 16:10  

Автор вопроса:  Nj | ICQ: 223663115 
№1. Можно ли передать UDType как опциональный параметр функции?
№2. Можно ли задать дефолтное значение для UDT, т.е. вроде d=textbox1 понимается как d=textbox1.text,
 e=checkbox1 понимается как e=checkbox1.value;
хочу тоже для пользовательского типа.
№2. Можно ли создать константу пользовательского типа? Спасибо за ответы.

Ответить

  Ответы Всего ответов: 12  

Номер ответа: 1
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #1 Добавлено: 24.08.06 17:03
1. Можно, но только если он объявлен в Public классе (или tlb) и завернут в Variant переменную.
2. А можно задать дефолтное значение для массива, т.е. d = MyArray понимается как MyArray(98)? lol
3. Ну попробуй. Только не забудь отключить проверку синтаксиса - а то не дотянешь до облома при компиляции :))

Ответить

Номер ответа: 2
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #2
Добавлено: 24.08.06 17:21
2. Вообще меня тоже интересовало - как VB опознает дефолтные свойства объектов? У него встроенная таблица, или у этих методов есть какой-то атрибут?

Ответить

Номер ответа: 3
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #3 Добавлено: 24.08.06 17:29
Гы... В idl поставь какому-нить пропедрю id(0) - вот те и дефолт :) У структур такой номер не прокатает :)

Ответить

Номер ответа: 4
Автор ответа:
 Nj



ICQ: 223663115 

Вопросов: 21
Ответов: 285
 Профиль | | #4 Добавлено: 24.08.06 22:09
Сэнкс, я оценил чувство юмора, но только можно чуть конкретнее:
Как завернуть тип в Variant?
Dim X as MyUDType
z= func(x)
...
function func(Arg)
...
end function
так?
КОнстанту нельзя, это жаль. А вот почему же Default он не понимает, ведь объектам то он присваивает? И в ран-моде, можно увидеть у объектов свойство _Default... А ладно, это я спрашиваю в стиле "А как записать пол-байта?"

Ответить

Номер ответа: 5
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #5
Добавлено: 25.08.06 13:08
В idl поставь какому-нить пропедрю id(0) - вот те и дефолт :)

Хитрый метод :)))

Ответить

Номер ответа: 6
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #6 Добавлено: 25.08.06 17:08
Как завернуть тип в Variant?

Простым присвоением.
почему же Default он не понимает, ведь объектам то он присваивает

Дефолтовых мемберов имеют ИНТЕРФЕЙСЫ, не СТРУКТУРЫ. Разницу между ними понимаешь?
Хитрый метод

В каком смысле? :-|

Ответить

Номер ответа: 7
Автор ответа:
 Nj



ICQ: 223663115 

Вопросов: 21
Ответов: 285
 Профиль | | #7 Добавлено: 27.08.06 21:34
Дефолтовых мемберов имеют ИНТЕРФЕЙСЫ, не СТРУКТУРЫ. Разницу между ними понимаешь?

Ага, только я же сказал: вопрос в стиле "как записать пол-байта: нельзя, но хочется!", да и смущает, что доступ к свойситвам интрефейса похож на доступ к свойствам структуры...

Ответить

Номер ответа: 8
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #8
Добавлено: 28.08.06 01:53
мона передавать не структуру явно а поинтер на нее, поинтер = 0, структуры нет

Ответить

Номер ответа: 9
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #9 Добавлено: 28.08.06 12:59
Угум, только если структура сложная (со строками и вложениями) - опухнешь потом с CopyMemory. Можно, конечно, поюзать недокументированые функции msvbvm для работы с указателями, но бред это, ИМХО.
ЗЫ Такая темка месяца три тут назад появлялась. Правда там ламак один доказывал что передать структуру в метод класса вообще нельзя и переубеждать его было бесполезно. В общем, накатил он в итоге на форум и так и убрался ламом :)

Ответить

Номер ответа: 10
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #10
Добавлено: 28.08.06 14:51
ну да, разумеется, если есть строки (динамические), такой способ не покатит.

Ответить

Номер ответа: 11
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #11 Добавлено: 28.08.06 15:25
e=checkbox1 понимается как e=checkbox1.value;

Кстати оно именно так и понимается :)

Ответить

Номер ответа: 12
Автор ответа:
 Nj



ICQ: 223663115 

Вопросов: 21
Ответов: 285
 Профиль | | #12 Добавлено: 28.08.06 16:07
Да с optionbutton я попутал его, нефиг разница, дело в другом. К тому же, я мог option назвать checkbox1 - и все дела :))

Все, всем спасибо - проблему решил с variant буду передавать, и придеться пережить без дефолтных свойств и констант...

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам