Each Structure (Help!)

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

Ladder
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 04.08.2005 (Чт) 23:57

Each Structure (Help!)

Сообщение Ladder » 05.08.2005 (Пт) 0:13

Помогите с Структурами на VB.NET

например я создал струстуру MyStuct

Public Structure MyStruct
filename As String
filepage As TabPage
End Structure

Объявляю новую структуру
NewStruct As MyStruct
NewStruct= New MyStruct

NewStruct.filename="test"
NewStruct.filepage=NewPage

И создав несколько таких структур
как я могу получить к ним доступ.
Можно ли получить доступ с помощью команд For Each,если можно то как?
или я зделал не так?

Если кто знает Blitz,то это выглядит так:

Type MyStruct
Field filename$
Field filepage
End Type

NewStruct.MyStruct=New MyStruct

NewStruct\filename="test"
NewStruct\filepage=NewPage

Вывод всех созданных MyStruct
For GetStruct.MyStruct=Each MyStruct
print GetStruct.filename
Next

Заранее Спасибо!

Dmitriy Solomnikov
Постоялец
Постоялец
 
Сообщения: 407
Зарегистрирован: 10.11.2004 (Ср) 13:04
Откуда: Москва

Сообщение Dmitriy Solomnikov » 05.08.2005 (Пт) 3:25

для начала занеси все свои структуры в массив (тут я этого не увидел, но наверное так оно и есть :wink: )

dim arr(n) as myStruct

можно так:
for i as integer=0 to arr.length-1
arr(i).........бла бла бла
next i

если нравится for each, то так

for each ms as myStruct in arr()
ms.........бла бла бла
next ms

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

Сообщение GSerg » 05.08.2005 (Пт) 4:00

Только это... Структурные объекты создаются фактом объявления переменной, new здесь не нужен...
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Ladder
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 04.08.2005 (Чт) 23:57

Сообщение Ladder » 06.08.2005 (Сб) 23:30

Спосибо за помощь

И можно еще один вопрос.

если я помещу структуру в массив, то я должен выделить для него память перед компиляцией ,например

dim arr(99) as myStruct

arr(99), а вовремя работы программы я могу выделять память для этого массива(добавить)???

например в начале проги arr(1) ,а потом там может быть arr(100) и более.

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 08.08.2005 (Пн) 8:38

Ladder писал(а):Спосибо за помощь

И можно еще один вопрос.

если я помещу структуру в массив, то я должен выделить для него память перед компиляцией ,например

dim arr(99) as myStruct

arr(99), а вовремя работы программы я могу выделять память для этого массива(добавить)???

например в начале проги arr(1) ,а потом там может быть arr(100) и более.


Можешь

Redim Preserve arr(99999)
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

Ladder
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 04.08.2005 (Чт) 23:57

Сообщение Ladder » 08.08.2005 (Пн) 14:43

Спасибо Sebas

asharky
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 162
Зарегистрирован: 22.06.2004 (Вт) 0:39
Откуда: Батоны-ларьки-поребрики...

Сообщение asharky » 25.12.2007 (Вт) 23:43

Sebas писал(а):
Ladder писал(а):Спосибо за помощь

И можно еще один вопрос.

если я помещу структуру в массив, то я должен выделить для него память перед компиляцией ,например

dim arr(99) as myStruct

arr(99), а вовремя работы программы я могу выделять память для этого массива(добавить)???

например в начале проги arr(1) ,а потом там может быть arr(100) и более.


Можешь

Redim Preserve arr(99999)
А я правильно понимаю, что если мне нужно в процессе работы приложения добавлять в массив структурных элементов не определяемое заранее количество новых членов, то мне лучше воспользоваться классами, а не структурами?
В культурной столице проститутки берут книгами...

Lexa
Новичок
Новичок
 
Сообщения: 29
Зарегистрирован: 17.11.2005 (Чт) 0:13
Откуда: Тверь

Сообщение Lexa » 06.01.2008 (Вс) 18:10

asharky
ИМХО не обязательно, всё зависит от задачи. Я делал через массив, не очень трудоёмко. Наверняка возможно также через Dictionary,ArrayList, Collection и т.д. Решать тебе, structure мне больше импонирует в качестве передачи параметров в приложении, что бы не путаться.


Вернуться в Visual Basic .NET

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

    TopList