Поделиться через


Атрибуты поля

Атрибуты полей — это атрибуты, которые можно применять к полям массива, структуры, объединения или массива символов:

Например, атрибуты полей используются в сочетании с объявлениями массива для указания размера массива или части массива, содержащего допустимые данные. Это делается путем связывания другого параметра, поля структуры или константного выражения с массивом.

Атрибут [игнорировать] атрибут указывает поля указателя, которые будут игнорироваться во время маршалинга. Такое игнорируемое поле имеет значение NULL на стороне получателя.

MIDL предоставляет соответствующие, различныеи открытые массивы. Массив называется соответствующим, если его границы определяются во время выполнения. Атрибут [size_is] ] обозначает верхнюю границу размера массива, а атрибут [max_is] обозначает верхнюю границу значения допустимого индекса массива. Дополнительные сведения см. в разделе [ массивы].

Массив вызывается разными, если его границы определяются во время компиляции, но диапазон передаваемых элементов определяется во время выполнения. Открытый массив (также называемый соответствующим разными массивами) — это массив, верхний предел которого и диапазон передаваемых элементов определяются во время выполнения. Чтобы определить диапазон передаваемых элементов массива, объявление массива должно содержать [length_is], [first_is]или атрибут [last_is] ].

Атрибут [length_is] указывает количество передаваемых элементов массива, а атрибут [first_is] обозначает индекс первого элемента массива, который необходимо передать. Атрибут [last_is] обозначает индекс последнего элемента массива для передачи.

Атрибут поля [switch_is] обозначает дискриминацию профсоюза. Если объединение является параметром процедуры, дискриминатор объединения должен быть другим параметром той же процедуры. Если объединение является полем структуры, дискриминатор должен быть другим полем структуры на том же уровне, что и поле объединения. Дискриминация должна быть логическим, char, intили перечислением или типом, разрешающим один из этих типов. Дополнительные сведения см. в разделе Некапсулированных профсоюзов и [switch_is].

Атрибут поля [строка] обозначает, что одномерный символ или массив байтов, а также указатель на символ нулевого или байтового потока, должен рассматриваться как строка. Атрибут строки применяется только к одномерным массивам и указателям. Тип элемента ограничен char, байтами, wchar_tили именованным типом, разрешающим одно из этих типов.

Сведения о контексте, в котором отображаются атрибуты полей, см. в массивах MIDL, структурах MIDLи объединениях MIDL.