
    Новые сообщения [новые:0]
  
  Дайджест 
  
  Горячие темы
    Избранное [новые:0]
  
Форумы 
 
Пользователи 
Статистика 
Статистика нагрузки 
    Мод. лог 
  
  Поиск 
| 
 | 
| 27.01.2015, 14:07 | |||
|---|---|---|---|
| 
 | |||
| Процедуры с параметрами | |||
| #18+ Добрый день уважаемые!  Проведите пожалуйста ликбез(( Вот простейшая процедура с параметрами. Она передает переменным VB,NB,Vtek значения , но как только переходит в процедуру Moduli_rascheta, эти переменные становятся =0((( Есть возможность их объявить в процедуре Raschet_na_deni так, чтобы они были видны и в др.? Код: vbnet 1. 2. 3. 4. 5. 6. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 27.01.2015, 14:22 | |||
|---|---|---|---|
| 
 | |||
| Процедуры с параметрами | |||
| #18+ vdekameronПроведите пожалуйста ликбезИзучите, наконец, уже тему "область видимости переменной". Зачем повторять учебник в топике? vdekameronЕсть возможность их объявить в процедуре Raschet_na_deni так, чтобы они были видны и в др.?нет. передавайте их явно ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 27.01.2015, 14:24 | |||
|---|---|---|---|
| 
 | |||
| Процедуры с параметрами | |||
| #18+ vdekameronно как только переходит в процедуру Moduli_rascheta, эти переменные становятся =0эти переменные не становятся равны нулю, они вообще не видны в процедуре Moduli_rascheta. Чтобы это понять, используйте Option Explicit, я же уже просил об этом. Тогда и вопросы ненужные отпадут сами собой. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 27.01.2015, 14:25 | |||
|---|---|---|---|
| 
 | |||
| Процедуры с параметрами | |||
| #18+ Shocker.Pro, Спасибо! ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 27.01.2015, 14:32 | |||
|---|---|---|---|
| 
 | |||
| Процедуры с параметрами | |||
| #18+ Я их объявил явно вверху и в процедуре. сделал - Option explicit. И когда переходит в процедуру  Moduli_rascheta они именно равны 0 ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 27.01.2015, 14:34 | |||
|---|---|---|---|
| Процедуры с параметрами | |||
| #18+ vdekameronЯ их объявил явно вверху и в процедуре. сделал - Option explicit. И когда переходит в процедуру  Moduli_rascheta они именно равны 0Не верим на слово, верим коду. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 27.01.2015, 14:49 | |||
|---|---|---|---|
| 
 | |||
| Процедуры с параметрами | |||
| #18+ AntonariyНе верим на слово, верим коду. Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 27.01.2015, 14:53 | |||
|---|---|---|---|
| 
 | |||
| Процедуры с параметрами | |||
| #18+ эта переменная сама по себе vdekameron Код: vbnet 1. эта переменная сама по себе vdekameron Код: vbnet 1. Это РАЗНЫЕ переменные, они просто имеют одинаковые имена. Можешь дать им разные имена, чтобы было понятнее ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 27.01.2015, 14:54 | |||
|---|---|---|---|
| 
 | |||
| Процедуры с параметрами | |||
| #18+ vdekameron  Код: vbnet 1. Нажми правой кнопкой на NB и выбери пункт Definition. VB покажет тебе, где объявлена твоя переменная ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 27.01.2015, 14:57 | |||
|---|---|---|---|
| 
 | |||
| Процедуры с параметрами | |||
| #18+ Shocker.Proони просто имеют одинаковые имена. Извините конечно, что раздражаю вас простейшими вопросами, но как это может быть, разве в таких случаях VB6 не должен ругаться, что мол совпадение имен. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 27.01.2015, 15:02 | |||
|---|---|---|---|
| 
 | |||
| Процедуры с параметрами | |||
| #18+ Не извиню, я же сказал Shocker.ProИзучите, наконец, уже тему "область видимости переменной". Зачем повторять учебник в топике?, а вы опять пытаетесь получить учебник на форуме. Поведение переменных с одинаковыми именами в разных областях видимости четко регламентировано ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 27.01.2015, 15:04 | |||
|---|---|---|---|
| 
 | |||
| Процедуры с параметрами | |||
| #18+ Shocker.ProНе извиню, я же сказал Казнить нельзя, миловать) У меня нету этого учебника. Я только ЗА почитать. Говорил уже вам что сейчас Лукина читаю. Там такого нет. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 27.01.2015, 15:13 | |||
|---|---|---|---|
| 
 | |||
| Процедуры с параметрами | |||
| #18+ Ок. Если имена переменных пересекаются, приоритет имеет переменная с наименьшей областью видимости. То есть внутри процедуры Raschet_na_deni под VB будет подразумеваться параметр процедуры, а не переменная модуля с тем же именем. Глобальный совет. Сведите использование глобальных переменных к минимуму, в идеале их не должно быть вообще (разве что глобальные настройки, глобальные константы типа Пи, но не рабочие переменные). Каждая процедура в идеале должна работать как черный ящик - получать на входе параметры и выдавать наружу результат (если он есть), она не должна зависеть от каких-то глобальных переменных и ничего не должна знать о том, кто ее вызывает. То есть процедуре должно быть все равно, в каком проекте она находится и кто ее вызвал, ее задача принять данные и выдать результат. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 27.01.2015, 15:45 | |||
|---|---|---|---|
| 
 | |||
| Процедуры с параметрами | |||
| #18+ Shocker.ProГлобальный совет. Сведите использование глобальных переменных к минимуму Ну значит я изначально сделал правильно! А сейчас просто прочитал в этой книге про процедуры с параметрами и решил переделать. Спасибо за хороший совет! ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
|  | 
| 
 | 

| start [/forum/topic.php?fid=60&tablet=1&tid=2156054]: | 0ms | 
| get settings: | 10ms | 
| get forum list: | 14ms | 
| check forum access: | 4ms | 
| check topic access: | 4ms | 
| track hit: | 30ms | 
| get topic data: | 13ms | 
| get forum data: | 3ms | 
| get page messages: | 47ms | 
| get tp. blocked users: | 1ms | 
| others: | 11ms | 
| total: | 137ms | 

 
    | 0 / 0 | 
