В чем принципиальное различие оформления кода?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
kibernetics
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 945
Зарегистрирован: 03.05.2006 (Ср) 13:31
Откуда: Minsk

В чем принципиальное различие оформления кода?

Сообщение kibernetics » 02.06.2007 (Сб) 23:28

у меня скопилось два вопроса:
1. при просмотре чужих исходников заметил, что, допустим, забивать дерево или листвью можно по-крайней мере двумя способами
способ a:
Код: Выделить всё
Dim nodX as Node
Set nodX = TreeView1.Nodes.Add(, , "K1", "First")

способ b:
Код: Выделить всё
Treeview1.Nodes.Add , , "K2", "Second"

в чём преимущественная разница использования этих двух способов?
в первом способе нужно еще наверное и ощищать переменную (Set nodX = Nothing), хотя, наверное, и сама помрёт после конца процедуры :?:

и второй вопрос:
2. обязательно ли объявлять во всех модулях (если он использует comctl32)
Код: Выделить всё
Public Declare Function InitCommonControls Lib "comctl32.dll" () As Long


или достаточно поместить декларацию только в модуль, где стартует Sub Main() с InitCommonControls и этого достаточно для всего кода?
Видел как-то ANDLL говорил, что достаточно один раз, но может тот случай был применим для его кода...
если кто поделится ответами - буду очень рад
спасибо

Dmitriy2003
Постоялец
Постоялец
 
Сообщения: 690
Зарегистрирован: 27.05.2003 (Вт) 22:47
Откуда: Deutschland

Сообщение Dmitriy2003 » 03.06.2007 (Вс) 6:01

:alien:
Вложения
xyz.rar
(2.64 Кб) Скачиваний: 56

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 03.06.2007 (Вс) 8:29

1. Способ a отличается от способа b тем, что приверженцы способа a считают, что если функция что-то возвращает, возвращённое надо обязательно присвоить в переменную соответствующего типа.
Это актуально для дотнета с его Dispose, а вообще, если результат функции не нужен, нафиг и присваивать.

2. Месторасположение декларации не играет никакой роли. Играет роль только факт вызова этой функции один раз в начале.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

kibernetics
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 945
Зарегистрирован: 03.05.2006 (Ср) 13:31
Откуда: Minsk

Сообщение kibernetics » 03.06.2007 (Вс) 10:03

Спасибо за пример и разъяснение.
Значит я всё делаю правильно. Использую With, и забиваю по способу b.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 52

    TopList