last_is-Attribut
Das Feldattribute [last_is] gibt den Index des letzten zu übertragenden Arrayelements an. Wenn der angegebene Index null oder negativ ist, werden keine Arrayelemente übertragen.
[last_is( limited-expression-list )]
-
limited-expression-list
-
Gibt einen oder mehrere C-Sprachausdrücke an. Jeder Ausdruck ergibt eine ganze Zahl, die den Arrayindex des letzten zu übertragenden Arrayelements darstellt. Der MIDL-Compiler unterstützt bedingte Ausdrücke, logische Ausdrücke, relationale Ausdrücke und arithmetische Ausdrücke. MIDL lässt keine Funktionsaufrufe in Ausdrücken zu und lässt keine Inkrement- und Dekrementoperatoren zu. Trennen Sie mehrere Ausdrücke durch Kommas.
Das Attribut [last_is] bestimmt den Wert des Arrayindexes, der dem [length_is] -Attribut entspricht, wenn [length_is] nicht angegeben ist. Die Beziehung zwischen diesen Arrayindizes ist wie folgt: length = last - first + 1.
Wenn der Durch [first_is] angegebene Wert des Arrayindexes größer als der durch [last_is] angegebene Wert ist, werden null Elemente übertragen.
Das Attribut [last_is] kann nicht gleichzeitig mit dem [length_is] -Attribut oder dem [string] -Attribut verwendet werden.
Die Verwendung eines konstanten Ausdrucks mit dem [last_is]- Attribut ist eine unangemessene Verwendung des Attributs. Es ist legal, aber ineffizient und führt zu einer langsameren Marshalling von Code.
Wenn der durch [max_is] angegebene Wert gleich oder größer 0 ist, muss die folgende Beziehung true sein: 0 <= last_is <= max_is.
proc1(
[in] short Last,
[in, last_is(Last)] short asNumbers[MAXSIZE]);