使用Python解释器在C ++应用程序中实例化C ++对象

时间:2017-05-03 21:20:56

标签: python c++ boost variadic-functions function-composition

我已经用C ++实现了几个类(例如下面的GetRadiusGetHeightMultiplyAdd。我想将Python解释器嵌入到C ++应用程序中,以便我可以编写一个Python脚本(下面是config.py)来实例化这些对象,如下所示:

#!/usr/bin/env python
# config.py
from my_cpp_classes import *

instantiate_in_cpp = []

# Area of cylinder
circle = Multiply(GetRadius(), GetRadius()), 3.14)
side = Multiply(Multiply(2, GetRadius()), GetHeight())  # function composition
area = Add(circle, circle, side)                        # variadic

# Volume of cylinder
volume = Multiply(end, GetHeight())

instantiate_in_cpp.append(area)
instantiate_in_cpp.append(volume)

在某种意义上,我使用Python作为标记语言来配置C ++应用程序。

在没有Boost的情况下,推荐的方法是什么? (我看到Boost.Python提供了一种嵌入解释器并将C ++对象暴露给Python程序的方法。)我是否会遇到试图暴露函数组合或可变函数的任何问题?

0 个答案:

没有答案