Boost.Python自带的代码生成器是Pyste的缘由

开发 后端
本文主要介绍的是Pyste在Boost.Python自带中怎样代码生成的实际操作介绍,如果你对Boost.Python自带的代码生成器是Pyste感兴趣的话,你可以观看我们的文章。

你对Pyste的实际运用于功能有所了解吗?其实Pyste与SWIG很类似,对于相关的源文件都是可以按照C++的相关形式来写的,那么以下的文章主要是介绍Pyste是怎么在Boost.Python的自带的代码中生成器。

你只要编写相应的接口文件即可生成相应代码。Pyste需要先安装才能使用。进入Boost的安装目录,然后“/libs/python/pyste/install”目录,运行python setup.py install,完成Pyste安装。

由于Pyste需要GCC-XML的支持,因此需要到GCC-XML的官方网站下载Windows版本的GCC-XML。安装完GCC-XML后,需要将其安装路径添加到系统PATH变量中。另外Pyste还需要ElementTree的支持,因此需要到其相关的官方网下载安装。

编写如下所示头文件“Num.h”。

 

  1. class Num  
  2. {  
  3. int value;  
  4. void set( int n )  
  5. {  
  6. value = n;  
  7. }  
  8. int get()  
  9. {  
  10. return value;  
  11. }   
  12. };   

 

编写如下所示接口文件“world.pyste”。

 

  1. Class("Num", "Num.h") 

由于在Windows下文件路径的问题,使用Pyste时最好将其放到“Num.h”和“world.pyste”所在的目录。在Windows命令行中进入其目录,运行如下命令。

 

  1. python pyste.py --module=num world.pyste 

在Boost.Python的相关代码的运行命令后将生成“num.cpp”文件,其内容如下所示。

 

  1. // Boost Includes ===================================
    ===========================  
  2. #include <boost/python.hpp> 
  3. #include <boost/cstdint.hpp> 
  4. // Includes =====================================
    ===============================  
  5. #include <Num.h> 
  6. // Using ======================================
    =================================  
  7. using namespace boost::python;  
  8. // Module =================================
    =====================================  
  9. BOOST_PYTHON_MODULE(num)  
  10. {  
  11. class_< Num >("Num", init< >())  
  12. .def(init< const Num& >())  
  13. ;  
  14. }   

 以上就是对Pyste为何是Boost.Python自带的代码生成器的缘由的相关的内容的介绍,望你会有所收获。

【编辑推荐】

  1. Python连接数据库的实际操作方案的介绍
  2. 用Python连接PostgreSQL数据库所需版本的介绍
  3. Python嵌入C++来弥补C++本身不足之处的方案介绍
  4. Python嵌入C/C++(较低层次嵌入)时所需用到的函数
  5. 把Python嵌入C/C++元组操作的具体以应用方案介绍
责任编辑:佚名 来源: 博客园
相关推荐

2021-10-29 11:25:41

代码编程语言Java

2017-09-06 09:26:03

Python生成器协程

2012-03-30 09:31:44

WEBCSS

2020-10-20 09:53:11

代码IDEA生成器

2023-05-17 16:02:00

CSS工具代码生成器

2015-08-25 15:54:17

程序员代码生成器

2021-07-23 11:24:54

Create Inc开源G代码生成器

2017-03-20 17:49:21

Java Web模板代码

2023-01-06 07:52:52

代码生成器开发

2009-07-03 09:29:24

KeelKit

2010-03-26 11:34:02

Boost.Pytho

2015-04-22 09:36:27

JAVA代码生成器

2022-05-19 14:57:30

CSS代码工具

2021-12-04 22:07:44

Python

2021-12-10 09:45:19

生成器配置代码

2023-05-04 16:24:10

人工智能图像生成器

2023-02-07 16:11:41

2012-03-21 09:49:42

Java

2015-09-10 08:45:39

CSS3生成器

2023-08-04 09:00:00

人工智能GPT-4语言模型
点赞
收藏

51CTO技术栈公众号