Liberar datos del mismo nivel
Todos los punteros que devuelven las funciones de infraestructura del mismo nivel deben liberarse mediante PeerGraphFreeData o PeerFreeData. Estas funciones solo deben llamarse para las estructuras que devuelve directamente una función de infraestructura del mismo nivel. No llame a otra función FreeData para liberar punteros anidados, por ejemplo, no llame a una función FreeData en los punteros de una estructura PEER_RECORD .
Ejemplo de liberar datos
En el siguiente fragmento de código se muestra cómo recuperar las propiedades asociadas a un grafo y, a continuación, liberar los datos que se devuelven.
PEER_GRAPH_PROPERTIES * pGraphProperties = NULL;
HRESULT hr = PeerGraphGetProperties(hGraph, &pGraphProperties);
if (SUCCEEDED(hr) && (NULL != pGraphProperties))
{
// use pGraphProperties
wprintf(L"%d\n", pGraphProperties->pwzGraphId);
// release the data
PeerGraphFreeData(pGraphProperties);
}