我正在编写一个插件,该插件将自定义库用于较大的代码应用程序。基本结构是:
大代码库->插件->自定义库
较大的代码使用的是我在自定义库(Eigen)中也使用的库,但版本较旧。因此,我尝试使用的某些例程将失败。
我尝试从大型代码库中隐藏所有最新类的实例,这确保插件仅使用正确的库,如下所示:
#ifdef LIBCOMPILE
#include<Eigen/Dense>
#include<Eigen/Sparse>
#endif
#ifdef LIBCOMPILE
//Definitions and commands that use Eigen
#endif
但是,当大型代码库尝试实例化我的插件时,出现SEGABRT错误,当我注释掉有问题的子类时,这些错误会消失。这些似乎是由于内存分配问题造成的。
如何将自定义库中的类公开给大型代码库,但请确保使用的库正确?