[SWIG] 在VS中运行SWIG的官方示例

2024-02-13 11:48
文章标签 运行 vs 示例 官方 swig

本文主要是介绍[SWIG] 在VS中运行SWIG的官方示例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

官方示例地址:https://github.com/swig/swig/tree/master/Examples
原文地址:https://www.yuque.com/cppdev/swig/ip3nfo

文章目录

  • 在VS中运行csharp\class示例
    • 打开VS工程,并进行配置
    • 调用SWIG
    • 编译C++的包装文件
    • C#使用
  • 后语

在VS中运行csharp\class示例

要求,本机已经安装了SWIG

.\swig\Examples\csharp\class举例

打开VS工程,并进行配置

(1)打开example.sln

(2)点击确定
请添加图片描述

(3)右键example > 重定向项目 > 选择一个你本机安装的Windows SDK版本

(4)右键example/example.i > 属性 > 自定义生成工具 > 常规 > 命令行
..\..\..\swig.exe改成swig(直接调用本机安装的swig)
请添加图片描述

调用SWIG

(5)右键example/example.i > 编译
编译生成了以下文件

class
├── example_wrap.cxx		C++代码的包装器
├── examplePINVOKE.cs		从dll中加载C++的变量、函数、类等内容
├── example.cs					以下文件都是C#的接口文件
├── Circle.cs
├── Shape.cs
└── Square.cs

编译C++的包装文件

(6)编译example工程

C#使用

(7)编译example-cs工程

(8)将生成example.dll拷贝到E:\cpp\swig_study\swig\Examples\csharp\class\bin\x86\Debug目录下

(9)运行example-cs

请添加图片描述

后语

如果想了解SWIG原理,可参考《HelloSWIG》

这篇关于[SWIG] 在VS中运行SWIG的官方示例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/705454

相关文章

Spring Boot项目打包和运行的操作方法

《SpringBoot项目打包和运行的操作方法》SpringBoot应用内嵌了Web服务器,所以基于SpringBoot开发的web应用也可以独立运行,无须部署到其他Web服务器中,下面以打包dem... 目录一、打包为JAR包并运行1.打包为可执行的 JAR 包2.运行 JAR 包二、打包为WAR包并运行

ubuntu系统使用官方操作命令升级Dify指南

《ubuntu系统使用官方操作命令升级Dify指南》Dify支持自动化执行、日志记录和结果管理,适用于数据处理、模型训练和部署等场景,今天我们就来看看ubuntu系统中使用官方操作命令升级Dify的方... Dify 是一个基于 docker 的工作流管理工具,旨在简化机器学习和数据科学领域的多步骤工作流。

MyBatisX逆向工程的实现示例

《MyBatisX逆向工程的实现示例》本文主要介绍了MyBatisX逆向工程的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录逆向工程准备好数据库、表安装MyBATisX插件项目连接数据库引入依赖pom.XML生成实体类、

$在R语言中的作用示例小结

《$在R语言中的作用示例小结》在R语言中,$是一个非常重要的操作符,主要用于访问对象的成员或组件,它的用途非常广泛,不仅限于数据框(dataframe),还可以用于列表(list)、环境(enviro... 目录1. 访问数据框(data frame)中的列2. 访问列表(list)中的元素3. 访问jav

VSCode中配置node.js的实现示例

《VSCode中配置node.js的实现示例》本文主要介绍了VSCode中配置node.js的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录一.node.js下载安装教程二.配置npm三.配置环境变量四.VSCode配置五.心得一.no

python+OpenCV反投影图像的实现示例详解

《python+OpenCV反投影图像的实现示例详解》:本文主要介绍python+OpenCV反投影图像的实现示例详解,本文通过实例代码图文并茂的形式给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录一、前言二、什么是反投影图像三、反投影图像的概念四、反向投影的工作原理一、利用反向投影backproj

Java NoClassDefFoundError运行时错误分析解决

《JavaNoClassDefFoundError运行时错误分析解决》在Java开发中,NoClassDefFoundError是一种常见的运行时错误,它通常表明Java虚拟机在尝试加载一个类时未能... 目录前言一、问题分析二、报错原因三、解决思路检查类路径配置检查依赖库检查类文件调试类加载器问题四、常见

使用Java将各种数据写入Excel表格的操作示例

《使用Java将各种数据写入Excel表格的操作示例》在数据处理与管理领域,Excel凭借其强大的功能和广泛的应用,成为了数据存储与展示的重要工具,在Java开发过程中,常常需要将不同类型的数据,本文... 目录前言安装免费Java库1. 写入文本、或数值到 Excel单元格2. 写入数组到 Excel表格

Python中的Walrus运算符分析示例详解

《Python中的Walrus运算符分析示例详解》Python中的Walrus运算符(:=)是Python3.8引入的一个新特性,允许在表达式中同时赋值和返回值,它的核心作用是减少重复计算,提升代码简... 目录1. 在循环中避免重复计算2. 在条件判断中同时赋值变量3. 在列表推导式或字典推导式中简化逻辑

Python位移操作和位运算的实现示例

《Python位移操作和位运算的实现示例》本文主要介绍了Python位移操作和位运算的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 位移操作1.1 左移操作 (<<)1.2 右移操作 (>>)注意事项:2. 位运算2.1