Приложения
Приложение А. Функции, константы и структуры RDS
А.5. Сервисные функции и макросы RDS
А.5.16. Работа с динамическими переменными
А.5.16.4. rdsDeleteDynamicVar – удалить динамическую переменную
Функция rdsDeleteDynamicVar удаляет динамическую переменную с указанным именем в указанном блоке.
BOOL RDSCALL rdsDeleteDynamicVarA( int Block, // Блок (RDS_DV*) RDSCSTR VarName // Имя переменной (UTF8) ); BOOL RDSCALL rdsDeleteDynamicVarW( int Block, // Блок (RDS_DV*) RDSWCSTR VarName // Имя переменной (UTF16) ); // Функция-псевдоним BOOL RDSCALL rdsDeleteDynamicVar( int Block, // Блок (RDS_DV*) RDSXCSTR VarName // Имя переменной (кодировка по умолчанию) );
Тип указателя на эту функцию
RDS_BIS (для UTF8) или RDS_BIWs (для UTF16)
Параметры
- Block (int)
- Одна из констант RDS_DV*, указывающих на блок, в котором удаляется динамическая переменная.
- VarName (RDSCSTR, RDSWCSTR, RDSXCSTR)
- Указатель на строку с именем удаляемой переменной.
Возвращаемое значение
TRUE – переменная успешно удалена, FALSE – удаление невозможно.
Примечания
Эта функция позволяет удалить динамическую переменную с указанным в параметре VarName именем в вызвавшем функцию блоке (при Block==RDS_DVSELF), его родительской подсистеме (при Block==RDS_DVPARENT) или в корневой подсистеме (при Block==RDS_DVROOT). Функция не может удалить переменную в произвольном блоке (любой доступ к динамическим переменным в RDS, включая их удаление, возможен только вверх по иерархии подсистем начиная с блока, модель которого вызывает функцию). Если блок, из модели которого вызвана функция, был подписан на удаленную переменную, эта подписка не прекращается (при повторном создании такой же переменной блок автоматически получит к ней доступ). Если нужно одновременно удалить переменную и прекратить подписку на нее, следует вызывать функцию rdsDeleteDVByLink.
При удалении блока или отключении от него модели все созданные в нем динамические переменные уничтожаются автоматически.
См. также