first_is - атрибут

Атрибут [first_is] указывает индекс первого передаваемого элемента массива.

first_is(limited-expression-list)

Параметры

limited-expression-list

Задает одно или несколько выражений языка C. Каждое выражение вычисляет целое число, представляющее индекс массива первого передаваемого элемента массива. Компилятор MIDL поддерживает условные выражения, логические выражения, реляционные выражения и арифметические выражения. MIDL не разрешает вызовы функций в выражениях и не разрешает операторы увеличения и уменьшения. Разделите несколько выражений запятыми.

Remarks

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

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

length = last - first + 1

Кроме того, должны содержаться следующие отношения:

0 <= first_is <= max_is

Следующая связь должна содержаться, если [max_is] <= 0:

first_is == 0

Атрибут [first_is] нельзя использовать одновременно с атрибутом [string].

Использование константного выражения с атрибутом [first_is] является недопустимым использованием атрибута. Это юридический, но неэффективный и приведет к замедлению маршалинга кода.

Примеры

HRESULT Proc1(
    [in] short First,
    [first_is(First)] Arr[10]);

См. также раздел

field_attributes

Файл определения интерфейса (IDL)

last_is

length_is

max_is

min_is

size_is

Строка