我在我的 c++ 代码中使用 Jansson 库。在库中创建任何 Jansson 变量时,应该释放该变量以释放引用,我正在使用 'json_decref(json_t *json)' 方法来释放。但有时它会导致双重释放问题,而我在运行时没有遇到问题。也许这不正常,但是当我尝试释放一些引用时,我想得到一个运行时错误。例如,我正在运行以下测试代码,
json_t *root = json_loads(any_json_message, 0, &error);
json_decref(root);
json_decref(root);
如您所见,存在问题,并且我没有收到任何运行时错误,例如双重释放。
另外,我正在使用 CMake 来编译我的源代码。也许任何 cmake 标志都可以解决我的问题。
任何想法 ?