purebasic.info

PureBasic forum
Текущее время: Ср окт 24, 2018 1:59 am

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
СообщениеДобавлено: Пн ноя 13, 2017 5:07 am 
Не в сети
доцент
Аватар пользователя

Зарегистрирован: Сб авг 05, 2017 8:34 pm
Сообщений: 41
Откуда: Россия, Брянск
Благодарил (а): 7 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Здравствуйте!
У меня такой вопрос:
Возможно ли задать имя переменной при помощи символьной строки?
Т.е. примерно так:

A$="moya_peremennaya"
make_vale(a$,integer)=1
debug moya_peremennaya

резульал :1

Т.е. программно создать(лбъявить) переменную или задать ссылку на существующую

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


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пн ноя 13, 2017 6:08 am 
Не в сети
профессор

Зарегистрирован: Вт май 13, 2014 4:12 am
Сообщений: 684
Благодарил (а): 75 раз.
Поблагодарили: 20 раз.
Пункты репутации: 5
А в чём идея???? зачем огород? ты всё это напрямую можешь сделать.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пн ноя 13, 2017 8:19 am 
Не в сети
профессор

Зарегистрирован: Сб фев 06, 2016 6:18 pm
Сообщений: 271
Благодарил (а): 14 раз.
Поблагодарили: 32 раз.
Пункты репутации: 0
Селекин Сергей писал(а):
задать ссылку на существующую
Код:
1
2
moya_peremennaya.s = ""
Debug @moya_peremennaya



Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вт ноя 14, 2017 3:31 am 
Не в сети
доцент
Аватар пользователя

Зарегистрирован: Сб авг 05, 2017 8:34 pm
Сообщений: 41
Откуда: Россия, Брянск
Благодарил (а): 7 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
repeat писал(а):
Селекин Сергей писал(а):
задать ссылку на существующую
Код:
1
2
moya_peremennaya.s = ""
Debug @moya_peremennaya



То, что я искал, оказывается называется картой.
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
NewMap Country.s()
 
  Country("GE") = "Germany"
  Country("FR") = "France"
  Country("UK") = "United Kingdom"
 
  Debug Country("FR")
 
  ForEach Country()
    Debug Country()
  Next
 
 



Только не понял параметра Slots
Код:
1
NewMap name.<;type>([Slots])


Если можете, объясните, пожалуйста, что это за параметр...
Как я понимаю Country - имя карты к которой мы обращаемся, FR - ключ (как бы своего рода переменная внутри этой карты), а слот это что???

да и еще вопрос...
Что значит
Цитата:
Код:
1
Debug @moya_peremennaya

, а точнее сам знак "@" в purebasic???


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вт ноя 14, 2017 6:19 am 
Не в сети
профессор

Зарегистрирован: Сб фев 06, 2016 6:18 pm
Сообщений: 271
Благодарил (а): 14 раз.
Поблагодарили: 32 раз.
Пункты репутации: 0
Селекин Сергей писал(а):
сам знак "@" в purebasic???
"@", "?", "*"
Селекин Сергей писал(а):
Только не понял параметра Slots
Предполагаю, что это резервирование памяти, при добавлении нового элемента он будет в диапазоне зарезервированных адресов. А как оно на самом деле, самому интересно :)


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вт ноя 14, 2017 12:37 pm 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11304
Благодарил (а): 4 раз.
Поблагодарили: 438 раз.
Селекин Сергей писал(а):
Только не понял параметра Slots
Из справки
Цитата:
The optional 'Slots' parameter defines how much slots the map will have have to store its elements. The more slots is has, the faster it will be to access an element, but the more memory it will use. It's a tradeoff depending of how many elements the map will ultimately contains and how fast the random access should be. The default value is 512. This parameter has no impact about the number of elements a map can contain.
Чем больше значение, тем быстрее будет доступ к элементу ассоциативного массива, но и памяти потребуется больше.

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Сб ноя 25, 2017 4:16 am 
Не в сети
доцент
Аватар пользователя

Зарегистрирован: Сб авг 05, 2017 8:34 pm
Сообщений: 41
Откуда: Россия, Брянск
Благодарил (а): 7 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Пётр писал(а):
Селекин Сергей писал(а):
Только не понял параметра Slots
Из справки
Цитата:
The optional 'Slots' parameter defines how much slots the map will have have to store its elements. The more slots is has, the faster it will be to access an element, but the more memory it will use. It's a tradeoff depending of how many elements the map will ultimately contains and how fast the random access should be. The default value is 512. This parameter has no impact about the number of elements a map can contain.
Чем больше значение, тем быстрее будет доступ к элементу ассоциативного массива, но и памяти потребуется больше.

Это понятно, но вот как правильно рассчитать значение этого параметра?
Ведь для этого нужно знать, что представляет собой его значение - сколько памяти будет забрано? 512 это что...? байты, мегабайты, биты???


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вс ноя 26, 2017 8:59 am 
Не в сети
профессор

Зарегистрирован: Чт сен 22, 2011 6:21 pm
Сообщений: 258
Благодарил (а): 35 раз.
Поблагодарили: 25 раз.
Пункты репутации: 0
Селекин Сергей писал(а):
512 это что...? байты, мегабайты, биты???

это максимальное количество записей (размер индексного буфера) , если начать писать записей больше изначально заданного - начнет сильно тормизить (полагаю включается авторасширение индексного буфера)

зы. "запись" - 1 пара "ключ-значение"


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: Google [Bot] и гости: 12


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

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group (блог о phpBB)
Сборка создана CMSart Studio
Русская поддержка phpBB