首页 > 编程语言 >c# 调用 c++代码

c# 调用 c++代码

时间:2024-06-17 21:59:59浏览次数:14  
标签:调用 c# 代码 c++ 包装 CPPWrap 属性

摘要

需要三个项目

  1. c++代码 CPPProject
  2. c++包装器 CPPWrap
  3. c#包装器 CSharpWrap

CPPWrap

创建c++动态链接库项目
配置属性 - 高级 - C+/CLI属性 ,依次设置公共语言运行时支持、.NET目标框架(设置为需要的.net环境对应的版本即可)

调整公共语言运行时

调整项目属性 - C/C++ - 语言 - 符合模式调整为否

随后需要依次将对应的c++类做一层包装,将c++类中的公共属性通过包装器暴露出去即可

CSharpWrap

直接引用对应的CPPWrap,便可以直接在c#代码中使用c++对应的类型了

[参考]
1
2
3

标签:调用,c#,代码,c++,包装,CPPWrap,属性
From: https://www.cnblogs.com/ives/p/18253300

相关文章

  • Asp.net core依赖注入服务生存期踩坑记录
    Asp.netcore依赖注入服务生存期踩坑记录写在开头今天我本想实现组件全局共享数据(状态管理),保存工厂名,用户登录id,设备编码等字段,以便全局共享。但我在a组件设置的值到了b组件就不见了。遇到的问题,与依赖注入服务生存期有关,我们知道依赖注入服务一共有三种:AddScoped:作用域Add......
  • 12k star 项目 cmake-examples 阅读和点评
    12kstar项目cmake-examples阅读和点评Author:ChrisZZTime:2024.06.17目录12kstar项目cmake-examples阅读和点评项目概要01-basicA-hello-cmakeB-hello-headersC-static-libraryD-shared-libraryE-installingF-build-typeG-compile-flagsH-third-party-libraryI-compi......
  • VSCode 中 Vue3:找不到模块 “./XXX.vue” 或其相应的类型声明
    问题!代码可以正常运行,但VSCode报错:找不到模块“./App.vue”或其相应的类型声明别再去愚昧的添加d.ts啦!只需在VSCode安装TypeScriptVuePlugin(Volar)拓展享受完全体的Vue导入!......
  • switch 语句能否作用在 byte 上;作用在 long 上;作用在 String 上?
    在Java中,switch语句可以作用于多种类型,具体情况如下:可以作用于byte类型:byte类型可以隐式转换为int,因此可以用作switch语句的条件表达式。publicclassSwitchByteExample{publicstaticvoidmain(String[]args){byteb=2;swit......
  • zero-shot-learning-definition-examples-comparison
    1Zero-shotlearning零样本学习。1.1任务定义利用训练集数据训练模型,使得模型能够对测试集的对象进行分类,但是训练集类别和测试集类别之间没有交集;期间需要借助类别的描述,来建立训练集和测试集之间的联系,从而使得模型有效。Zero-shotlearning就是希望我们的模型能够对其从......
  • 12、docker-数据卷容器-多个容器之间数据同步----volumes-from
     =========================================================================================测试:让docker02和03继承docker01·三个容器中,如果父容器被删除了,02和03的数据还是会存在的·容器共享的只有做了特殊处理的卷,不是所有的文件都共享,比如下列的volume01和......
  • Windows ipconfig命令用法简单介绍
    windows的图形界面操作起来很舒服,但是有时候不熟悉的话又会比较难操作,因此通过一定的命令行可以帮助我们完成网络配置和故障排除,Windowsipconfig命令无疑是一个不错的工具。本次就来简单讲述一下ipconfig命令的各种用法和技巧,帮助你更好地管理和优化你的网络连接,以及应对电脑有......
  • Riffa用户接口与PCIE组帧
    参考:PCIE之RIFFA框架接口时序_riffa框架-CSDN博客一、概述  RIFFA是一个开源框架,用于实现简便的PCIE通信,使开发者只需要关注与数据相关的接口,不必花费大量时间用于TLP包的解析核封装。一个简单的结构框图如下:二、接口时序  使用RIFFA框架开发只用关注用户侧的数据接口时......
  • C# 通过Win32API设置客户端系统时间
    在日常工作中,有时可能会需要获取或修改客户端电脑的系统时间,比如软件设置了Licence有效期,预计2024-06-0100:00:00到期,如果客户手动修改了客户端电脑时间,往前调整了一年,则软件就可以继续使用一年,如此循环往复,则Licence将形同虚设。所以有时候需要校验客户端电脑时间和服务器端时间......
  • Pytorch入门(一):MNIST-手写数字识别-搭建网络模型
    前言作为刚入门深度学习的一位初学者来说,各种各样的学习资料、视频让我看得头昏眼花。明明本来是想了解Pytorch使用方法,莫名其妙看了一个多小时的算法推理,原理逻辑,让人很是苦恼。于是在自己学习了一段时间后,打算做出这个pytorch的系列教程,就是想让大家基于项目进行实战,更......