Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
MIDL podporuje tři typy ukazatelů pro přizpůsobení široké škály aplikací. Tři různé úrovně se nazývají odkazy, jedinečné a úplné ukazatele a jsou označeny atributy [ref], [jedinečné]a [ptr]. Třídy ukazatelů popsané těmito atributy se vzájemně vylučují. Atributy ukazatele lze použít na ukazatele v definicích typů, návratové typy funkcí, parametry funkce, členy struktur nebo sjednocení nebo prvky pole.
Vložené ukazatele jsou ukazatele, které jsou členy struktur nebo sjednocení. Mohou to být také prvky polí. V [ve směru] se předpokládá, že vložené [odkaz] ukazatele odkazují na platné úložiště a nesmí být null. Tato situace se rekurzivně vztahuje na všechny [odkaz] ukazatele, na které odkazují. V [in] směru vložené [jedinečné] a úplné ukazatele (ukazatele s atributem [ptr]) mohou nebo nesmí mít hodnotu null.
Jakýkoli atribut ukazatele umístěný na parametru v syntaxi deklarace funkce ovlivňuje pouze deklarátor ukazatele nejvíce vpravo pro tento parametr. Chcete-li ovlivnit jiné deklarátory ukazatelů, je nutné použít zprostředkující pojmenované typy.
Funkce, které vracejí ukazatel, můžou mít atribut ukazatele jako atribut funkce. Atributy [unique] a [ptr] musí být použity pro návratové typy funkcí. Deklarace členů, které jsou ukazateli, mohou zadat atribut ukazatele jako atribut pole. Atribut ukazatele lze také použít jako atribut typu v typedef konstrukty.
Pokud není atribut ukazatele zadán jako atribut pole nebo typu, atributy ukazatele se použijí podle pravidel pro deklaraci ukazatele bez připojení následujícím způsobem.
V režimu kompatibility DCE jsou atributy ukazatele určeny v definování souboru IDL. Pokud existuje [pointer_default**]**atribut zadaný v definujícím rozhraní, použije se tento atribut. Pokud není k dispozici žádný atribut [pointer_default], jsou všechny nepřipojené ukazatele úplnými ukazateli.
V režimu rozšíření Microsoftu lze atributy ukazatele určit importem souborů IDL a použijí se v následujícím pořadí:
- Explicitní atribut ukazatele použitý na webu použití.
- Atribut [ref], pokud je ukazatel bez tlačítka myši parametr ukazatele nejvyšší úrovně.
- Atribut [pointer_default] zadaný v definujícím rozhraní.
- Atribut [pointer_default] zadaný v základním rozhraní.
- Atribut [unique].
Atribut rozhraní [pointer_default ] určuje výchozí atributy ukazatele, které se mají použít u deklarátoru ukazatele v deklarátoru typu, parametru nebo návratového typu, pokud tato deklarace neobsahuje explicitní atribut ukazatele. Atribut rozhraní [pointer_default] se nevztahuje na ukazatel nejvyšší úrovně, který se předpokládá [ref].