Boost库学习与应用
文章平均质量分 90
Boost 是一个功能强大、构造精巧、跨平台、开源并且完全免费的 C++ 程序库。由 Boost 社区开发和维护,其目的是向 C++ 程序员提供免费的、经同行审查的、可移植的、高质量的 C++ 源程序库。本专栏用于记录对boost库的学习过程。
翔底
普通的码农,简单的职业生涯
展开
-
Boost(9):使用Boost.Python实现 C++ 和 Python 混合编程
本文章描述如何使用Boost.Python库在C++代码中嵌入Python程序原创 2022-05-15 09:29:24 · 3383 阅读 · 1 评论 -
Boost(8):Boost.Python 实现 Python 对象以及各种类型的内置操作和方法
说明Python 有多种非常好用的数据类型,如 Numbers,String,List,Tuple,Dictionary 和 Set。在前面的示例中我们经常用到的 Numbers 和 String(它们的内容) 可以直接在 C++ 代码中使用,因为这两者也是 C++ 的数据类型(虽然实现上不同,但不妨碍两者通用)。但是其他类型的数据结构在 C++ 中并没有,那么当 Python 需要使用这些类型且与 C++ 代码有交互时,该如何处理呢?在 Boost.Python 和 C++ 的观点中,这些 Pytho原创 2022-05-09 21:57:38 · 2836 阅读 · 0 评论 -
Boost(7):Boost.Python封装重载函数和传递默认参数
本文介绍了在使用 Boost.Python 库将 C++ 函数转换为 Python 接口时,如何处理重载函数和默认参数。原创 2022-05-02 18:52:40 · 1861 阅读 · 0 评论 -
Boost(6):Boost.Python 如何转换 C++ 的参数和返回值类型
详述使用Boost.Python转换C++的参数和返回值到Python原创 2022-04-27 12:02:19 · 1286 阅读 · 0 评论 -
Boost(5):从python object提取c++语言的类型以及extract类详解
前言python和c++之间数据类型的差别是进行转换时经常碰到的问题,有些简单的数据类型可以通用,但还有很多中类型则无法直接使用。在碰到这类问题时,boost.python提供的extract类是一个很方便的解决方案。这篇内容用于记录我在使用中对extract的理解。1. 说明1.1 Extract介绍Extract是Boost.Python中用来从Python对象中提取c++对象的类,通过这个类我们可以将一些Python的对象转换成C++语言的对象。如将 boost::python::str类型原创 2022-01-18 16:03:17 · 1438 阅读 · 0 评论 -
Boost(4):boost::noncopyable类详解
这篇文章详细介绍了boost::noncopyable类的实现以及提供了示例说明。原创 2022-01-12 23:02:00 · 1524 阅读 · 0 评论 -
Boost(3):将c++类封装成python类
简单介绍了如何使用Boost.Python将c++语言的class及其成员变量和成员函数封装成python语言课调用的实例。原创 2022-01-09 15:57:51 · 3907 阅读 · 0 评论 -
Boost(2):boost.python库介绍及简单示例
1. boost.python介绍将c/c++的函数接口转换为Python接口有好几种解决方案,不同于C语言的简单直接,C++因使用了大量的面向对象编程的思想导致转换为Python接口时相对比较复杂,boost.python的目标就是为了简单方便地将C++程序转换成Python的接口。BoostPython库是boost c++库的其中一个子库,使用它可以轻松地将C++的函数接口转换成Python接口。在大部分情况下你不需要对原先的C++代码做任何修改,boost.python会对C++类再做一层封装,原创 2022-01-05 18:31:07 · 9409 阅读 · 0 评论 -
boost.python:在c++程序中调用python的函数
1. 说明最初决定这么使用是因为在调试过程中经常要打印一些boost.python封装的数据类型,如boost::python::str和boost::python::list等。这些数据类型不能直接通过std::cout来输出,因为不是c++的普通数据类型,而是另外封装的class,但是对应的list和str类型却可以在python中直接使用print()函数打印。所以,就想着在c++中调用python的print函数实现灵活打印输出。2. 实现方法python程序下无论是数据类型还是函数,传递到b原创 2020-09-15 17:01:16 · 2514 阅读 · 0 评论 -
Boost(1):Boost库简介及安装
1. Boost库介绍Boost是一个功能强大、构造精巧、跨平台、开源并且完全免费的C++程序库,在1998年由Beman G.Dawes发起倡议并建立。使用了许多现代C++编程技术,内容涵盖字符串处理、正则表达式、容器与数据结构、并发编程、函数式编程、泛型编程、设计模式实现等许多领域,极大地丰富了C++的功能和表现力,能够使C++软件开发更加简洁、优雅、灵活和高效。Boost库可以与C++标准库完美共同工作,并且为其提供扩展功能。大部分Boost库功能的使用之需要包括相应的头文件即可,少数需要连接库。原创 2022-01-02 14:56:31 · 17148 阅读 · 4 评论