Array, attribut

Les tableaux sont des collections homogènes de données accessibles par un numéro d’index ou d’élément.

typedef [ [type-attr-list] ] type-specifier [pointer-decl] array-declarator;

typedef [ [type-attr-list] ] struct [ tag ] 
{
    [ [ field-attribute-list ] ] type-specifier [pointer-decl] array-declarator;
    ...
};

typedef [ [type-attr-list] ] union [ tag ] 
{
    [ case (limited-expression [ , ... ] ) ]
  [ [ field-attribute-list ] ] type-specifier [pointer-decl] array-declarator;
  [ [ default ]
  [ [ field-attribute-list ] ] type-specifier [pointer-decl] array-declarator;
  ]
};

[[ [function-attribute-list] ]] type-specifier [[pointer-decl]] function-name(
        [[ [param-attr-list] ]] type-specifier [[pointer-decl]] array-declarator
        , ...);

Paramètres

type-attr-List

Spécifie zéro, un ou plusieurs attributs qui s’appliquent au type. Les attributs de type valides incluent [ ] handle, [ _ ] type de commutateur, [ transmettre _ en tant que ]; l’attribut de pointeur [ Ref ], [ unique ]ou [ ptr ]; et les attributs d’utilisation [ _ handle ] de contexte, [ chaîne ]et [ Ignorer ]. Séparez plusieurs attributs par des virgules.

spécificateur de type

Spécifie l’identificateur de type, le type de base, le struct, l' Unionou le type enum . La spécification de type peut inclure une spécification de stockage facultative.

pointeur-decl

Spécifie zéro ou plusieurs déclarateurs de pointeur. Un déclarateur de pointeur est le même que le déclarateur de pointeur utilisé en C, construit à partir de l' * indicateur _, des modificateurs tels que _ Far et le qualificateur const.

déclarateur de tableau

Spécifie le nom du tableau, suivi de l’une des constructions suivantes pour chaque dimension du tableau : «**[ ]**», « [*] », « [ Const1 ] » ou « [ Lower... Upper ] », où Lower et Upper sont des valeurs constantes qui représentent les limites inférieure et supérieure. La constante inférieure doit être égale à zéro.

étiquette

Spécifie une balise facultative pour la structure ou l’Union.

Field-attribute-List

Spécifie zéro, un ou plusieurs attributs de champ qui s’appliquent à la structure, au membre d’Union ou au paramètre de fonction. Les attributs de champ valides sont [ First _ ]is, [ Last _ is ], [ Length _ ]is, [ Max _ is ], [ size _ is ], the usage Attributes [ String ]et [ ignore ]; les attributs de pointeur [ Ref ], [ unique ]et [ ptr ]; et le [ _ type ] de commutateurd’Union. Séparez plusieurs attributs de champ par des virgules. Notez que les attributs répertoriés ci-dessus, le [ premier _ ] est, le [ dernier _ est ], et [ Ignorer ] ne sont pas valides pour les unions.

Limited-expression

Spécifie une expression de langage C. Le compilateur MIDL prend en charge les expressions conditionnelles, les expressions logiques, les expressions relationnelles et les expressions arithmétiques. MIDL n’autorise pas les appels de fonction dans les expressions et n’autorise pas les opérateurs d’incrémentation et de décrémentation.

function-attribute-List

Spécifie zéro, un ou plusieurs attributs qui s’appliquent à la fonction. Les attributs de fonction valides sont [ callback ], [ ] local, l’attribut de pointeur [ Ref ], [ unique ]ou [ ptr ]; et la [ chaîne ]d’attributs d’utilisation et le [ _ handle ] de contexte.

nom de fonction

Spécifie le nom de la procédure distante.

Param-attr-List

Spécifie les attributs directionnels et un ou plusieurs attributs de champ facultatifs qui s’appliquent au paramètre de tableau. Les attributs de champ valides incluent [ Max _ is ], [ size _ ] is, [ Length _ is ], [ First _ is ]et [ Last _ is ].

Notes

Les tableaux dans MIDL utilisent un style semblable à, mais pas exactement identiques à C et C++. Pour plus d’informations, consultez tableaux MIDL.

Voir aussi

rappel

const

handle de contexte _

variables

tout d’abord, _

traitée

Fichier de définition d’interface (IDL)

ignore

la dernière _ est

la longueur _ est

localisé

le nombre maximal _ est

ptr

ref

la taille _ est

chaîne

modélis

type de commutateur _

transmettre _ en tant que

union

unique