Megosztás a következőn keresztül:


Mutatók és memóriafoglalás

A memória mutatókon keresztüli módosításához gyakran szükséges, hogy a kiszolgáló és az ügyfél elegendő memóriát foglaljon le a tömb elemeihez.

Amikor egy csonknak lefoglalnia vagy szabad memóriát kell felszabadítania, futásidejű kódtárfüggvényeket hív meg, amelyek meghívják a függvényeket midl_user_allocate és midl_user_free. Ezek a függvények nem szerepelnek a futásidejű kódtárban. Meg kell írnia ezeknek a függvényeknek a saját verzióit, és össze kell kapcsolnia őket az alkalmazással. Így eldöntheti, hogyan kezelheti a memóriát. Az IDL-fájl OSF-kompatibilis (/osf) módban történő összeállításakor nem kell implementálnia ezeket a függvényeket. Ezeket a függvényeket a következő prototípusokhoz kell írnia:

void __RPC_FAR * __RPC_API midl_user_allocate(size_t len)

void __RPC_API midl_user_free(void __RPC_FAR * ptr)

Az alkalmazásokhoz tartozó függvények verziói például egyszerűen szabványos kódtárfüggvényeket hívhatnak meg:

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);
}