最近我开始研究 C++ 中的内存泄漏,所以我可能会问一个幼稚的问题。
我有一个使用 OpenSSL 的 c++ 库——我的任务是检查这个库中是否存在内存泄漏。我已经运行 Visual Leak Detector 来检查内存泄漏。
我看到调用SSL_library_init();
并 SSL_load_error_strings();
导致泄漏 - 快速谷歌搜索显示在使用结束时我必须调用以下内容:
CONF_modules_free();
ERR_remove_state(0);
ENGINE_cleanup();
CONF_modules_unload(1);
ERR_free_strings();
EVP_cleanup();
CRYPTO_cleanup_all_ex_data();
泄漏确实减少了,但仍然有两个泄漏(VLD 工具向我显示)因为SSL_library_init
调用而发生。
有谁知道我还需要做什么才能释放所有的内存泄漏?