Fältattribut
Fältattribut är de attribut som kan tillämpas på fält i en matris, struktur, union eller teckenmatris:
Till exempel används fältattribut tillsammans med matrisdeklarationer för att ange antingen matrisens storlek eller den del av matrisen som innehåller giltiga data. Detta görs genom att associera en annan parameter, ett strukturfält eller ett konstant uttryck med matrisen.
Attributet [ignorera] anger pekarfält som ska ignoreras under marskalkeringsprocessen. Ett sådant ignorerat fält är inställt på NULL- på mottagarsidan.
MIDL tillhandahåller , varierandeoch öppna matriser. En matris kallas för konform om dess gränser bestäms vid körning. Attributet [size_is] anger den övre gränsen för matrisens allokeringsstorlek och attributet [max_is] anger den övre gränsen för värdet för ett giltigt matrisindex. Mer information finns i [matriser].
En matris kallas för varierande om dess gränser bestäms vid kompileringstillfället, men intervallet för överförda element bestäms vid körning. En öppen matris (kallas även en överensstämmande varierande matris) är en matris vars övre gräns och intervall av överförda element bestäms vid körning. För att fastställa intervallet för överförda element i en matris måste matrisdeklarationen innehålla ett [length_is], [first_is]eller [last_is] attribut.
Attributet [length_is] anger antalet matriselement som ska överföras och attributet [first_is] anger indexet för det första matriselementet som ska överföras. Attributet [last_is] anger indexet för det sista matriselement som ska överföras.
Fältattributet [switch_is] anger en unionsdiskriminator. När unionen är en procedurparameter måste uniondiskriminatorn vara en annan parameter i samma procedur. När unionen är ett område i en struktur måste diskrimineringen vara ett annat område i strukturen på samma nivå som unionsområdet. Diskrimineringen måste vara ett booleskt, tecken, inteller uppräkning typ eller en typ som matchar någon av dessa typer. Mer information finns i Nonencapsulated Unions and [switch_is].
[sträng] fältattribut anger att ett endimensionellt tecken eller bytematris, eller en pekare till ett nollslutet tecken eller byteström, ska behandlas som en sträng. Strängattributet gäller endast för endimensionella matriser och pekare. Elementtypen är begränsad till tecken, byte, wchar_teller en namngiven typ som matchar någon av dessa typer.
Information om kontexten där fältattribut visas finns i MIDL-matriser, MIDL Structuresoch MIDL Unions.