当前位置: 首页 > news >正文

visual studio网站开发教程二级域名网站建设规范

visual studio网站开发教程,二级域名网站建设规范,如何做婚庆公司的网站,外贸电商怎么做的无论是C调用Rust动态库还是Rust调用C动态库,其操作基本都是一样地简单,基本和C调用C的动态库没什么区别,只需要列出所需要导入的函数,并链接到相应的lib文件即可。 这里,在windows中,我们以dll动态库为例说…

无论是C++调用Rust动态库还是Rust调用C++动态库,其操作基本都是一样地简单,基本和C++调用C++的动态库没什么区别,只需要列出所需要导入的函数,并链接到相应的lib文件即可。

这里,在windows中,我们以dll动态库为例说明。

(1) C++调用Rust生成的动态库

在Rust中,新建一个动态库,

cargo new --lib externtest

然后,修改Cargo.toml的内容如下,

[package]
name = "externtest"
version = "0.1.0"
edition = "2021"# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html[dependencies][lib]
crate-type = ["dylib"]

这里,dylib就是dynamic library的意思,然后修改src/lib.rs的内容,

#[no_mangle]
pub extern "C" fn foo3(i:i32) -> i32{i
}

 然后,通过指令

cargo build

就可以得到两个文件:externtest.dll, externtest.dll.lib,然后,在c++程序中,就可以正常调用这个库了。你可以使用MSYS2-gcc,这里我用的是vs2019。

vs2019新建一个控制台应用程序,将main.cpp的内容修改为如下,

#include <iostream>extern "C" int foo3(int);int main()
{std::cout << "Hello World!\n" << foo3(101);
}

同时,设置链接属性到externtest.dll.lib(配置属性->链接器->输入->附加依赖项 )。

编译后就可以直接运行了,而且,如果你单步运行的话,vs2019可以直接进入rust的源码中。

(2)Rust调用C++生成的动态库 

Rust调用C++动态库也同样简单,先生成一个动态库DynamicLib1.dll,其中DynamicLib1.cpp的内容如下,

extern "C" __declspec(dllexport) int32_t add(int32_t a, int32_t b) { return a + b; }

 生成DynamicLib1.dll后,我们写一个Rust程序测试一下,

cargo new rust-to-dll

然后,修改src/main.rs的内容如下,

#![allow(non_snake_case)]
#[link(name="DynamicLib1", kind="static")]
extern "C" { fn add(x: i32, y: i32) -> i32; }fn main() {// println!("Hello, world!");let x = unsafe { add(62, 30)};println!("{}", x); // 92
}

 记得把dll放到rust-to-dll的主目录下,然后就可能通过

cargo build

生成rust-to-dll.exe,用

cargo run

就能得到运行结果(92)。

本文结束

http://www.yayakq.cn/news/595999/

相关文章:

  • dedecms 网站标题 设置杭州聚翔网络有限公司
  • 南京做网站费用肇庆网站建设方案维护
  • 热门网站有哪些怎样注册自己网站的域名
  • 建设网站需要桐庐网站制作
  • 济南中京网站建设公司国外metro风格网站模板
  • 企业建网站服务商网站源码上传完后怎么做
  • wordpress分享视频网站网站建设数据库多少钱
  • 门户网站建设报告怎么做自适应的网站
  • 手机免费创网站哪里可以做游戏视频网站
  • 武宁网站ui专业设计如何实现wordpress伪静态
  • 做兼职网上哪个网站好专做hiphop的网站
  • 怎样做公司网站宿迁建设局质安站网站
  • wordpress表单录入金融网站推广圳seo公司
  • 上海网站建设的意义网站友情链接的好处
  • 天津做不锈钢的网站住房和城乡建设厅网站首页
  • 网站建设打造学院北京建筑公司招聘信息
  • 网站建设负责传资料不浏阳烟花网站建站定位及营销功能
  • 盈润企业网站管理系统ui展示 网站
  • 怎么做网站内容添加做视频网站需要什么架构
  • 9.9元包邮网站怎么做西部数码做跳转网站
  • 建设旅游网站需要多少钱网站排名哪家好
  • 集团网站建设策划方案大连百度快速排名优化
  • 建筑门户网站给公司做企业网站
  • 如何做网站流量买卖网站设计英文翻译
  • 高端网站设计定制wordpress仿天涯主题
  • 做系统的图标下载网站app制作网站收费吗
  • 昆明找工作哪个网站好头条发布视频成功显示404
  • Wordpress源码下载站做故障风的头像的网站
  • 网站单页模板下载影视自助建站
  • 国外ps网站杭州seo排名收费