last_is 特性
field 属性 [last_is] 指定要传输的最后一个数组元素的索引。 当指定的索引为零或负时,不会传输数组元素。
[last_is( limited-expression-list )]
-
limited-expression-list
-
指定一个或多个 C 语言表达式。 每个表达式的计算结果为一个整数,该整数表示要传输的最后一个数组元素的数组索引。 MIDL 编译器支持条件表达式、逻辑表达式、关系表达式和算术表达式。 MIDL 不允许在表达式中调用函数,也不允许递增和递减运算符。 用逗号分隔多个表达式。
未指定 [length_is] 时,[last_is] 属性确定对应于 [length_is] 属性的数组索引的值。 这些数组索引之间的关系如下:length = last - first + 1。
如果 [first_is] 指定的数组索引的值大于 [last_is] 指定的值,则传输零个元素。
[last_is] 属性不能与 [length_is] 属性或 [string] 属性同时用作字段属性。
将常量表达式与 [last_is] 属性一起使用是不恰当的。 这是合法的,但效率低下,并将导致代码封送处理速度变慢。
当 [max_is] 指定的值等于或大于零时,以下关系必须为 true:0 <= last_is <= max_is。
proc1(
[in] short Last,
[in, last_is(Last)] short asNumbers[MAXSIZE]);