指標和記憶體配置
透過指標變更記憶體的能力通常需要伺服器和用戶端為數組中的元素配置足夠的記憶體。
當存根必須配置或釋放記憶體時,它會呼叫執行時間程式庫函式,進而呼叫 函式midl_user_allocate 和 midl_user_free。 這些函式不會包含在執行時間程式庫中。 您必須撰寫自己的這些函式版本,並將它們與您的應用程式連結。 如此一來,您就可以決定如何管理記憶體。 在 OSF 相容性 (/osf) 模式中編譯 IDL 檔案時,您不需要實作這些函式。 您必須將這些函式寫入下列原型:
void __RPC_FAR * __RPC_API midl_user_allocate(size_t len)
void __RPC_API midl_user_free(void __RPC_FAR * ptr)
例如,應用程式的這些函式版本可以直接呼叫標準程式庫函式:
void __RPC_FAR * __RPC_API midl_user_allocate(size_t len)
{
return(malloc(len));
}
void __RPC_API midl_user_free(void __RPC_FAR * ptr)
{
free(ptr);
}