我有一个C ++静态库.lib,我用cython包装来创建一个python扩展模块。我已经能够使用调试信息构建库和扩展模块,并将Visual Studio Community 2015调试器附加到python进程并调试C ++代码。
现在我想使用检测来分析C ++代码。如果我选择VS2015性能向导选项进行检测,我只能选择可执行文件或dll项目,我无法选择我的代码所在的静态库项目。我想如果我可以指示VS使用python .pyd扩展模块,它可能会起作用,因为它是一个dll。但是,我不知道该怎么做。
我还试图找到一些启动探查器的方法,同时将调试器附加到python进程,就像我调试C ++代码一样,但我还没找到方法。
我可以在逐步完成代码时看到PerfTips。但是这还不够。有谁知道如何在这个静态库中分析C ++代码?
最终,如果我找不到方法,我可以创建另一个VS2015可执行项目并从那里调用我的lib代码,然后分析可执行项目。这种方法唯一的不便是我将一些多维数组从python传递到扩展模块,我必须先从python中保存它们,然后将它们加载到C ++可执行项目中。我不确定我该怎么做,但它可行。如果我能够在从python中调用C ++ lib代码时对我来说会更方便,因为我将来会多次这样做,并且必须保存python数据然后每次从C ++加载它都有点麻烦。