Utilice el operador de C++ "delete" para liberar la memoria de objetos dentro de un enclave.
- Enclave incluye objetos de C++ como clases y unique_ptrs.
- No se puede determinar cómo liberar la memoria para objetos de C++ en el enclave.
En enclaves, utilice el operador de eliminación de C++ para liberar la memoria que anteriormente se asignaba a clases, unique_ptrs y otros objetos mediante el nuevo operador. Los operadores new y delete se comportan igual en enclaves que en aplicaciones de C++ regulares.
Código de muestra:
test.h:
class{
private:
ClassA* ca;
unique_ptr cb;
}
test.cpp:
//Use new to instantiate the class and unique_ptr objects
ca = new ClassA*(...);
cb = make_unique(function(...));
//Use delete to free the memory previously allocated with new
delete ClassA;
delete cb;
Para obtener más información, consulte la sección De asistencia de lenguaje de C++ Intel® Software Guard Extensions (Intel® SGX) de referencia para desarrolladores de SDK de su sistema operativo.
- Intel SGX de referencia para desarrolladores de SDK para Windows*
- La Intel SGX de desarrollador para Linux se encuentra en la carpeta Documentación de la versión más reciente del SDK de Intel® Software Guard Extensions para Linux*.