首页 > 其他分享 >一个pybind11的例子

一个pybind11的例子

时间:2024-05-07 17:22:06浏览次数:16  
标签:bar show 一个 py HelloWorld 例子 pybind11 world

首先在当前文件夹下安装pybind11。

然后编写以下3个文件:

1、CMakeLists.txt

cmake_minimum_required(VERSION 3.5)

project(example LANGUAGES CXX)

add_subdirectory(pybind11)

pybind11_add_module(bar bar.cpp)

  

2、foo.py

import bar

hello_world = bar.HelloWorld()
hello_world.show("Hello world!")

  

3、bar.cpp

#include <iostream>

#include <pybind11/pybind11.h>

class HelloWorld {
public:
  void show(const std::string &s) { std::cout << s << std::endl; }
};

namespace py = pybind11;
PYBIND11_MODULE(bar, m) {
  py::class_<HelloWorld>(m, "HelloWorld")
      .def(py::init())
      .def("show", &HelloWorld::show);
}

  

最后编译运行。

标签:bar,show,一个,py,HelloWorld,例子,pybind11,world
From: https://www.cnblogs.com/qiandeheng/p/18177850

相关文章

  • 通义灵码实战系列:一个新项目如何快速启动,如何维护遗留系统代码库?
    作者:别象进入2024年,AI热度持续上升,翻阅科技区的文章,AI可谓是军书十二卷,卷卷有爷名。而麦肯锡最近的研究报告显示,软件工程是AI影响最大的领域之一,AI已经成为了软件工程的必选项,也有研究称开发者每天的事务性工作可能占到了七成左右,比如单侧编写等,而这部分恰好是AI所擅长......
  • 通义灵码实战系列:一个新项目如何快速启动,如何维护遗留系统代码库?
    作者:别象进入2024年,AI热度持续上升,翻阅科技区的文章,AI可谓是军书十二卷,卷卷有爷名。而麦肯锡最近的研究报告显示,软件工程是AI影响最大的领域之一,AI已经成为了软件工程的必选项,也有研究称开发者每天的事务性工作可能占到了七成左右,比如单侧编写等,而这部分恰好是AI所擅长......
  • 一个CMake的例子
    首先编写4个文件:1、CMakeLists.txt内容:cmake_minimum_required(VERSION3.15)project(Demo)include_directories(${PROJECT_BINARY_DIR}/headers)aux_source_directory(${PROJECT_BINARY_DIR}/sourcesSRC_DIR)add_library(dynamic_librarySHARED${SRC_DIR})add_libr......
  • 5.6为一个activity编写一个滚动界面的.java文件
    packagecom.example.yibaifen;importstaticandroidx.core.content.ContentProviderCompat.requireContext;importandroidx.annotation.NonNull;importandroidx.appcompat.app.AppCompatActivity;importandroidx.recyclerview.widget.DividerItemDecoration;importandro......
  • 如何实现一个简单易用的 RocketMQ SDK
    2018年,做为架构负责人,接到一个架构需求:实现一个简单易用的RocketMQSDK。因为各个团队RocketMQ原生客户端配置起来千奇百怪,有的配置存在风险,各团队负责人都需要一个简洁易用的RocketMQSDK。我立马调研相关开源的方案,当时RocketMQ-Spring项目并没有开源,而阿里云的ONS......
  • 顺序栈实现进制转换 和 通过键盘输入一个包括 '(' 和 ')' 的字符串string ,判断字符串
    /********************************************************************************************************** filename: Zqh_栈实现.c* author : [email protected]* date : 2024/05/05* function: 顺序栈实现进制转换和通过键盘输入一个包括'('和')'......
  • Hello world! 记我的第一个随笔
    Hello,大家好啊,这是我在博客园写的第一个随笔,之前基本上都是在csdn和github上进行写东西的,最近突然想建立一个自己的博客,这样的话就可以写一点除了技术和经验以外的其他杂事了。把这个当是一个记事本吧,有当作一个交朋友的途径,维护好自己的小博客也是很有成就感的捏( ̄▽ ̄)*欢迎大家和......
  • vue3.4中KeepAlive的一个bug
    KeepAlive可以缓存组件,在不使用include时没有任何问题,可以正常缓存。但是一旦使用了include,如果动态组件中没有导入ref函数,缓存功能就消失了比如editcom.vue<template><input></template><scriptsetup>import{ref}from'vue'</script><style></style&g......
  • 删除字符串中与另一个字符串中的相同字母的自定义函数
    #include<stdio.h>/********************************************************************* 函数名称: str_DestDel* 函数功能:删除一个字符串中与另一个字符串中的相同字母并且不区分大小写* 函数参数:* @strA 需要操作的字符串* @strB 作为参考的字......
  • 主页和一个详情页完全成功(5个代码)(样式,有动画)
    C文件夹布局网页存放/│├──app.py#Flask应用├──templates/#存放HTML文件│├──index.html#主页│└──upload.html#详情页├──static/│├──css/││└──styles.css......