last_is (attributo)

L'attributo field [last_is] specifica l'indice dell'ultimo elemento della matrice da trasmettere. Quando l'indice specificato è zero o negativo, non vengono trasmessi elementi di matrice.

[last_is( limited-expression-list )]

Parametri

limited-expression-list

Specifica una o più espressioni del linguaggio C. Ogni espressione restituisce un numero intero che rappresenta l'indice di matrice dell'ultimo elemento di matrice da trasmettere. Il compilatore MIDL supporta espressioni condizionali, espressioni logiche, espressioni relazionali ed espressioni aritmetiche. MIDL non consente chiamate di funzione nelle espressioni e non consente operatori di incremento e decremento. Separare più espressioni con virgole.

Commenti

L'attributo [last_is] determina il valore dell'indice di matrice corrispondente all'attributo [length_is] quando [length_is] non è specificato. La relazione tra questi indici di matrice è la seguente: length = last - first + 1.

Se il valore dell'indice di matrice specificato da [first_is] è maggiore del valore specificato da [last_is], vengono trasmessi zero elementi.

L'attributo [last_is] non può essere usato come attributo di campo contemporaneamente all'attributo [length_is] o all'attributo [string].

L'uso di un'espressione costante con l'attributo [last_is] è un uso non appropriato dell'attributo . È legale, ma inefficiente e comporterà un marshalling più lento del codice.

Quando il valore specificato da [max_is] è uguale o maggiore di zero, la relazione seguente deve essere true: 0 <= last_is <= max_is.

Esempi

proc1(
    [in] short Last,
    [in, last_is(Last)] short asNumbers[MAXSIZE]);

Vedere anche

Attributi dei campi

first_is

File IDL (Interface Definition)

length_is

max_is

size_is