Pointer-Attribute typarv

Enligt DCE-specifikationen måste varje IDL-fil definiera attribut för sina pekare. Om ett explicit attribut inte har tilldelats en pekare använder pekaren det värde som anges av nyckelordet [ pointer_default] . Vissa DCE-implementeringar tillåter inte icke-distribuerade pekare. Om en pekare inte har ett explicit attribut måste IDL-filen ha en [pointer_default] specifikation så att pekarattributet kan anges.

I standardläge (Microsoft-tillägg) kan du ange ett pekarattribut i IDL-filen som importerar den definierande IDL-filen. Pekare som definieras i en IDL-fil kan ärva attribut som anges i andra IDL-filer. I standardläge kan IDL-filer också innehålla oattributerade pekare. Om varken basen eller de importerade IDL-filerna anger ett pekarattribut eller [pointer_default]tolkas oattributerade pekare som unika pekare.

MIDL-kompilatorn tilldelar pekarattribut till pekare med hjälp av följande prioritetsregler (1 är högst).

Prioritering Beskrivning
1 Explicita pekarattribut tillämpas på pekaren vid definitionen eller användningsplatsen.
2 Standardvärdet är attributet [pointer_default] i IDL-filen som definierar typen.
3 Standardvärdet är attributet [pointer_default] i IDL-filen som importerar typen.
4 Standardvärdet är [ ptr] i DCE-kompatibilitetsläge eller [ unika] i Microsoft-tilläggsläge.