Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Microsoft Office и VBA > Microsoft Office Word
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 12.04.2011, 08:04   #1
EL_MoC
Пользователь
 
Регистрация: 06.04.2011
Сообщений: 15
Репутация: 18
По умолчанию Что такое хорошо, а что такое плохо...

Уважаемые, не желаете ли подискутировать на тему глобальных и локальных переменных, а также переменных со статическим диапозоном или динамическим.

Конкретика такова - кому нравятся переменные типа Variables?
Кому нравится задавать переменные Public?



З. Ы.: я ничего не имею против всего этого дела, а даже в какой-то степени понимаю те моменты, когда без них нельзя или их применение облегчает жизнь тем или иным способом.
EL_MoC вне форума   Ответить с цитированием
Старый 12.04.2011, 19:07   #2
Ципихович Эндрю
Профессионал
 
Регистрация: 24.01.2011
Сообщений: 2,304
Репутация: 48
По умолчанию

Вариаблес в 600 штук - класс, в 6000 штук на днях проверю
Ципихович Эндрю вне форума   Ответить с цитированием
Старый 13.04.2011, 08:09   #3
Вождь
Форумчанин
 
Аватар для Вождь
 
Регистрация: 29.09.2008
Сообщений: 367
Репутация: 223

icq: 397882017
По умолчанию

Тип Variant и медленнее и затратнее по ресурсам. Вот наглядный пример:
Код:

Option Explicit

Sub Test()

Dim T1!, T2!, T3!

    StatusBar = "Работаю..."
    T1 = Timer
    
    Const c_Max& = 9999999
    Dim V As Variant: V = 0: While V < c_Max: V = V + 1: Wend
    
    T2 = Timer
    
    Dim N As Long: N = 0: While N < c_Max: N = N + 1: Wend
    
    T3 = Timer
    StatusBar = "Финиш"
    MsgBox _
        "Время 1: " & CStr(T2 - T1) & " сек." & vbLf & _
        "Время 2: " & CStr(T3 - T2) & " сек." & vbLf & _
        "Разница (1-2): " & CStr((T2 - T1) - (T3 - T2)) & " сек."
    
End Sub

__________________
Макросы на заказ и готовый пакет - mtdmacro.ru
Вождь вне форума   Ответить с цитированием
Старый 13.04.2011, 08:26   #4
Smitt&Wesson
Профессионал
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Адрес: г. Киров
Сообщений: 13,913
Репутация: 659

skype: forwardbiznes
По умолчанию

Глобальные, локальные!?
Да пользователю пофигу чё там мы натворили. Ему главное, "что-бы костюмчик сидел". Т.е. выполнялось то, чего он заказал.
Это было актуально, когда память в 1Мб занимала 1Га (Си появился в то время) . Отсюда и битовые поля и прочая мутотень. Сейчас это не актуально.
__________________
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder

Последний раз редактировалось Smitt&Wesson; 13.04.2011 в 08:32.
Smitt&Wesson вне форума   Ответить с цитированием
Старый 13.04.2011, 21:02   #5
Ципихович Эндрю
Профессионал
 
Регистрация: 24.01.2011
Сообщений: 2,304
Репутация: 48
По умолчанию

получил разницу по представленному коду 1,15625 сек при размере 9999999 я бы назвал эту разницу = 0
Да это машина ещё у меня средняя
Ципихович Эндрю вне форума   Ответить с цитированием
Старый 13.04.2011, 22:12   #6
Вождь
Форумчанин
 
Аватар для Вождь
 
Регистрация: 29.09.2008
Сообщений: 367
Репутация: 223

icq: 397882017
По умолчанию

Цитата:
Сообщение от Ципихович Эндрю Посмотреть сообщение
...я бы назвал эту разницу = 0...
Что интересно, в MS Word 2003, 2007, 2010 тест работает одинаковое время с long, в MS Word 2003, 2007 время одинаково и для variant, а вот MS Word 2010 работает с variant заметно быстрее.
__________________
Макросы на заказ и готовый пакет - mtdmacro.ru
Вождь вне форума   Ответить с цитированием
Старый 14.04.2011, 18:49   #7
Ципихович Эндрю
Профессионал
 
Регистрация: 24.01.2011
Сообщений: 2,304
Репутация: 48
По умолчанию

ну вот проверил, загнал 6500 переменных в файл, файл увеличился на 330 КБ, никаких тормозов и только открыл документ - всё готово, пользуйся
Хорошая вещь и к тому же закидываются они туда в алфавитном порядке и две одинаковые закинуть не сможете
Ципихович Эндрю вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что такое ^= ? k1r1ch Общие вопросы C/C++ 3 10.01.2010 18:15
Что такое @? k1r1ch Общие вопросы Delphi 11 11.09.2009 20:15
Что такое SE LOPKOT HTML и CSS 5 31.08.2009 21:50
Что Такое Прокси? Рустам Свободное общение 1 17.11.2007 14:02
то такое мастерство в программировании, что такое мастер программист и что он может? Cezar Свободное общение 29 02.06.2007 23:48


18:00.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru