Správa přidělení paměti
Ve COM je mnoho, pokud ne většina, metod rozhraní voláno kódem napsaným jednou programovací organizací a implementováno kódem napsaným jinou. Mnoho parametrů a návratových hodnot těchto funkcí je typů, které lze předávat hodnotou. Někdy je však nutné předat datové struktury, pro které tomu tak není, takže je nutné, aby volající i volaný měli kompatibilní politiku přidělování a uvolňování. COM definuje univerzální konvenci přidělování paměti, protože je rozumnější než definovat pravidla pro jednotlivé případy a aby implementace vzdáleného volání procedur COM mohla správně spravovat paměť.
Metody rozhraní COM vždy zajišťují správu paměti ukazatelů na rozhraní voláním AddRef a Release funkcí nalezených v rozhraní IUnknown, ze kterého jsou odvozena všechna ostatní rozhraní COM. (Další informace najdete v části Pravidla pro správu referenčních počtů.)
Tato část popisuje, jak přidělit paměť pro parametry, které nejsou předány hodnotou – nikoli ukazatele na rozhraní, ale více běžné věci, jako jsou řetězce, ukazatele na struktury atd.
Další informace najdete v následujících tématech:
- Alokátor paměti OLE
- pravidla správy paměti
- ladění paměťových přidělení