Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Публичный двумерный массив, Помогите. Что-то не получается :( 
V
    Опции темы
HeJIenOcTb
Дата 13.4.2007, 10:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 23.10.2006

Репутация: нет
Всего: нет



Здравствуйте.
У меня такая проблема. В одной процедуре нужно заполнить массив, а в другой потом использовать эти данные. Всё на одной форме. 
Так вот, в General области объявляю 
Код

Public itog As String
 если укажу размерность прямо здесь, то вылетает ошибка "Массивы фиксируемой длины недопускается использовать как общие"
Вот собственно и вопрос, как правильно объявить и указать размерность данного массива? Помогите пожалуйста, работа стоит.
PM   Вверх
mihanik
Дата 13.4.2007, 10:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


-=Белый Медведь=-
****


Профиль
Группа: Комодератор
Сообщений: 4054
Регистрация: 24.4.2006
Где: г. Тверь

Репутация: 11
Всего: 109



Насколько помню, более грамотно вставить в проект отдельный модуль и все глобальные переменные объявлять там...

Попробуй!!!


--------------------
Программистами не рождаются, - это родовая травма...
user posted imageuser posted image
PM MAIL WWW ICQ   Вверх
HeJIenOcTb
Дата 13.4.2007, 10:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 23.10.2006

Репутация: нет
Всего: нет



Цитата(mihanik @ 13.4.2007,  10:45)
Попробуй!!!

Большое спасибо, всё так просто оказалось smile
Всё работает.
PM   Вверх
Akina
Дата 13.4.2007, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



не более грамотно, а единственно правильно.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Black_Star
Дата 14.4.2007, 09:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 192
Регистрация: 9.9.2003
Где: Minsk

Репутация: 4
Всего: 4



mihanikAkina, вы оба не правы! 
Понятие глобальная переменная - относительно. Глобально относительно всего проекта, или глобальная относительно модуля?
И ежели у HeJIenOcTb все в одной форме, 
Цитата(HeJIenOcTb @  13.4.2007,  10:38 Найти цитируемый пост)
Всё на одной форме

то достаточно объявить в General
Код

Private itog as string
или 
Dim itog as string
Верно?

PM ICQ   Вверх
HeJIenOcTb
Дата 14.4.2007, 10:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 23.10.2006

Репутация: нет
Всего: нет



Цитата(Black_Star @ 14.4.2007,  09:51)
то достаточно объявить в General
Код

Private itog as string
или 
Dim itog as string
Верно?

думаю, что нет
если объявить в General, то размерность там задать нельзя. А если размерность задать в процедуре, то массив виден только в этой процедуре. Я писал выше
Цитата
Так вот, в General области объявляю код Visual Basic
  
Код

Public itog As String

 если укажу размерность прямо здесь, то вылетает ошибка "Массивы фиксируемой длины недопускается использовать как общие"


PM   Вверх
bom
Дата 14.4.2007, 10:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 329
Регистрация: 22.2.2004
Где: Казахстан, Алматы

Репутация: 4
Всего: 6



Локальные - область видимости: процедура события.
Уровня модуля -  область видимости: модуль (форма или класс).
Глобальные - область видимости: весь проект.

Цитата(mihanik @  13.4.2007,  13:45 Найти цитируемый пост)
отдельный модуль и все глобальные переменные объявлять там

True
Цитата(Akina @  13.4.2007,  13:56 Найти цитируемый пост)
единственно правильно

Исходя из контекста, имеются в виду  глобальные переменные.
Поэтому, тоже True


Цитата(Black_Star @  14.4.2007,  12:51 Найти цитируемый пост)
глобальная относительно модуля

Такой не бывает. False
Цитата(Black_Star @  14.4.2007,  12:51 Найти цитируемый пост)
достаточно объявить в General
код Visual Basic    
Private itog as string    
или  
Dim itog as string    
Верно?

Верно, но не единственно-верно. Можно объявить в модуле, как и предложил mihanik

Цитата(HeJIenOcTb @  14.4.2007,  13:08 Найти цитируемый пост)
если объявить в General, то размерность там задать нельзя

Можно.
PM MAIL   Вверх
HeJIenOcTb
Дата 14.4.2007, 10:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 23.10.2006

Репутация: нет
Всего: нет



Цитата
Можно.

bom, а можно пример кода, как в General объявить размерность? Потому что как не однократно писал, при попытке указать размерность в General, выдаёт ошибку. Если возможно указать размерность, то хотелось бы знать на будующее, как это сделать.
Заранее спасибо.

Это сообщение отредактировал(а) HeJIenOcTb - 14.4.2007, 11:05
PM   Вверх
bom
Дата 14.4.2007, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 329
Регистрация: 22.2.2004
Где: Казахстан, Алматы

Репутация: 4
Всего: 6



Код

Private itog(12) As String

PM MAIL   Вверх
HeJIenOcTb
Дата 14.4.2007, 11:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 23.10.2006

Репутация: нет
Всего: нет



Цитата(bom @ 14.4.2007,  11:05)
Код

Private itog(12) As String

Хм.... Верно, работает. Ошибка возникала при обявлении переменной как Public.
Ладно, спасибо, будем знать.
PM   Вверх
Black_Star
Дата 14.4.2007, 15:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 192
Регистрация: 9.9.2003
Где: Minsk

Репутация: 4
Всего: 4



Цитата(bom @  14.4.2007,  10:30 Найти цитируемый пост)

Цитата(Black_Star @  14.4.2007,  12:51 )
глобальная относительно модуля

Такой не бывает. False

smile 

Исходя из того, что я так ее назвал? Тем не менее она видна в любой ф-и модуля/формы. Потому - глобальна для всего модуля. Смысл не меняется.

PM ICQ   Вверх
bom
Дата 14.4.2007, 22:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 329
Регистрация: 22.2.2004
Где: Казахстан, Алматы

Репутация: 4
Всего: 6



Меняется вывод: 
Цитата(Black_Star @  14.4.2007,  12:51 Найти цитируемый пост)
mihanik, Akina, вы оба не правы!
 на противоположный. 
 smile 
По поводу названий... Можно, конечно и "VB" назвасть "VC++", от этого его работа не изменится, но кое-кто будет введен в заблуждение smile

Цитата(Black_Star @  14.4.2007,  12:51 Найти цитируемый пост)
Понятие глобальная переменная - относительно

Это понятие - абсолютно. Область видимости глобальной переменной - весь проект и единственно правильное ее размещение, как и единственно возможное - отдельный модуль проекта.


PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.1004 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.