Pointeurs et RPC
Il est très efficace d’utiliser des pointeurs comme paramètres de fonction C. Le pointeur ne coûte que quelques octets et peut être utilisé pour accéder à une grande quantité de mémoire. Toutefois, dans une application distribuée, les procédures client et serveur résident dans des espaces d’adressage différents, elles peuvent se trouver sur différents ordinateurs. Par conséquent, le client et le serveur n’ont généralement pas accès au même espace mémoire.
Quand l’un des paramètres de la procédure distante est un pointeur vers un objet, le client doit transmettre une copie de cet objet et son pointeur au serveur. Si la procédure distante modifie l’objet via son pointeur, le serveur retourne le pointeur et sa copie modifiée.
MIDL propose des attributs de pointeur pour réduire la quantité de surcharge requise et la taille de votre application. Cette section décrit l’objectif et les utilisations des attributs de pointeur MIDL. Il présente également des informations sur la gestion des pointeurs dans les applications RPC. Il est divisé en rubriques suivantes :
- Types de pointeurs
- Pointeurs et allocation de mémoire
- Types de pointeurs par défaut
- Héritage du type pointeur-attribut