Verwalten der Speicherzuordnung
In COM werden viele, wenn nicht die meisten Schnittstellenmethoden durch Code aufgerufen, der von einer Programmier-organization geschrieben und durch Code implementiert wird, der von einer anderen geschrieben wurde. Viele der Parameter und Rückgabewerte dieser Funktionen sind von Typen, die als Wert übergeben werden können. Manchmal ist es jedoch notwendig, Datenstrukturen zu übergeben, für die dies nicht der Fall ist. Daher ist es notwendig, dass sowohl der Aufrufer als auch der Aufgerufene eine kompatible Zuordnungs- und Aufhebungsrichtlinie haben. COM definiert eine universelle Konvention für die Speicherzuordnung, da sie sinnvoller ist als die Definition von Einzelfallregeln und so, dass die Com-Remoteprozeduraufrufimplementierung den Arbeitsspeicher ordnungsgemäß verwalten kann.
Die Methoden einer COM-Schnittstelle stellen immer die Speicherverwaltung von Zeigern auf die Schnittstelle bereit, indem die Funktionen AddRef und Release in der IUnknown-Schnittstelle aufgerufen werden, von denen alle anderen COM-Schnittstellen abgeleitet werden. (Weitere Informationen finden Sie unter Regeln zum Verwalten von Referenzzahlen .)
In diesem Abschnitt wird nur beschrieben, wie Sie Arbeitsspeicher für Parameter zuweisen, die nicht als Wert übergeben werden – nicht Zeiger auf Schnittstellen, sondern alltäglichere Dinge wie Zeichenfolgen, Zeiger auf Strukturen usw.
Weitere Informationen finden Sie in den folgenden Themen:
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für