Текущий раздел:

Описания RDS

Приложения

Приложение А. Функции, константы и структуры RDS

А.5. Сервисные функции и макросы RDS

А.5.16. Работа с динамическими переменными

А.5.16.4. rdsDeleteDynamicVar – удалить динамическую переменную

# Приложения

## Приложение А. Функции, константы и структуры 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.

При удалении блока или отключении от него модели все созданные в нем динамические переменные уничтожаются автоматически.

См. также

rdsCreateDynamicVar, rdsDeleteDVByLink.