【发布时间】:2015-02-15 20:37:51
【问题描述】:
我有执行以下操作的 Python 代码:
从仿真软件中获取优化问题。
使用多线程IPOPT算法解决了这个优化问题。
将2中得到的结果转换为另一个维度。
以图形的形式显示结果。
现在我用 C++ 编写了一个类来解决优化问题(第 2 点)以提高速度以及出于其他一些原因,它从第 1 点(问题、约束等)接收输出并给出输出进一步传递到第 3 点(Python 中的一个函数)。
如何将这些从 1 中获得的变量传递给 2 中的 C++ 类,然后返回到 3 中的 Python 函数?以下是我正在尝试的:
我使用 SWIG 来生成包装文件。用于 SWIG 为 2.cpp 和 2.h C++ 文件创建包装器的接口文件:
/* File: 2.i */
%module t2c_main
%{
#define SWIG_FILE_WITH_INIT
#include "../include/2.h"
%}
%include ../include/2.h
运行 SWIG 后,我得到了一个 Python 文件和一个 cxx 文件。现在我在使用这些文件时遇到了问题;如上所述,我需要传递变量。
【问题讨论】: