Update page '2.4. vtype_map'
parent
aa2abe666f
commit
b5400de09c
@ -1,10 +1,21 @@
|
||||
## vtype_map
|
||||
|
||||
Набор пар ключ-значение с неизменяемыми уникальными ключами. Тип содержащихся ключей должен быть определен при инициализации контейнера, данные могут иметь произвольный тип. Контейнер основан на красно-черном дереве (осуществляя поиск по ключу), в связи с чем, обладает всеми преимуществами и недостатками оного.
|
||||
|
||||
### [include/map.h](https://gogs.lirent.ru/lirent/libcdsb/src/master/include/map.h)
|
||||
|
||||
##### Интерфейс callback-функции доступа к элементу (далее CallbackT)
|
||||
|
||||
|
||||
- `int callback(const void* key, vtype key_type, void* value, vtype value_type, void* data)`
|
||||
|
||||
- `key`: указатель на область памяти, в которой располагается значение ключа ячейки контейнера, доступ к которой обеспечивается данной функцией. Изменение данных недопустимо и ведет к неопределенному поведению программы.
|
||||
- `key_type`: значение типа ключа, заданное константой перечисления **vtype**, соответствующее типу данных, к которым обеспечивается доступ.
|
||||
- `value`: указатель на область памяти, в которой располагается значение данных ячейки контейнера, доступ к которой обеспечивается данной функцией.
|
||||
- `value_type`: значение типа данных, заданное константой перечисления **vtype**, соответствующее типу данных, к которым обеспечивается доступ.
|
||||
- `data`: произвольные пользовательские данные, которые будут переданны в callback вызывающим методом.
|
||||
|
||||
|
||||
##### Базовый блок
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user