【CXX】5 桥接模块参考

第1章篇(核心概念)介绍了CXX用于表示语言边界的高级模型。本篇在此基础上,详细记录#[cxx::bridge]的语法和功能。

  1. extern "Rust"
  • 暴露不透明的Rust类型、Rust函数、Rust方法给C++。

  • 包含生命周期的函数。

  1. extern "C++"
  • 绑定不透明的C++类型、C++函数、C++成员函数。

  • 在多个桥接模块或不同crate之间共享不透明类型定义。

  • 在CXX桥接中使用bindgen生成的数据结构。

  • 以符合Rust孤儿规则的方式,请求在特定桥接模块中生成特定的胶水代码。

  1. 共享类型
  • 共享结构体。

  • 共享枚举。

  • 使用Rust作为数据源或C++作为数据源。

  1. 属性
  • 处理命名空间。

  • 在非原生语言中为函数指定不同的名称。

  1. 异步函数
  • 将异步C++与异步Rust集成。
  1. 错误处理
  • 在语言边界上表示可失败性。

  • 从C++访问Rust错误信息。

  • 自定义捕获的异常集及其转换为Rust错误信息的方式。

相关推荐
whoarethenext1 小时前
初始https附带c/c++源码使用curl库调用
服务器·c++·qt·https·curl
enyp802 小时前
麒麟系统(基于Ubuntu)上使用Qt编译时遇到“type_traits文件未找到”的错误
linux·qt·ubuntu
道剑剑非道2 小时前
QT开发技术【qcustomplot 曲线与鼠标十字功能】
开发语言·qt·计算机外设
mahuifa5 小时前
Qt内置图标速查表
qt·图标·qstyle·qicon
Ethon_王8 小时前
走进Qt--QWidget基类详解
c++·qt
苏近之8 小时前
深入理解 Rust 中的生命周期
rust
UestcXiye10 小时前
Rust 学习笔记:编程练习(一)
rust
狗蛋儿l13 小时前
qt 3d航迹图
开发语言·qt·3d
Ethon_王15 小时前
走进Qt--信号与槽机制详解与实战
c++·qt
十五年专注C++开发16 小时前
Qt中的全局函数讲解集合(全)
开发语言·c++·qt·算法