温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么从Rust中调用c++的工具

发布时间:2021-11-24 11:22:27 来源:亿速云 阅读:380 作者:iii 栏目:大数据

这篇文章主要讲解了“怎么从Rust中调用c++的工具”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么从Rust中调用c++的工具”吧!

google/autocxx - 高度自动化的rust调用c++,而且安全,时尚

这个项目是一个从Rust中调用c++的工具,以一种高度自动化但安全的方式。
这样做的目的是,在使用bindgen的一个变体从现有的c++头文件自动生成接口的同时,也具有来自cxx的所有流畅安全性。可以把autocxx看作是将bindgen插入cxx的胶水。
它的目的是最终公开一个过程宏,如下所示:

   
   
  
class Bob {
public:
   Bob(std::string name);
   ...
   void do_a_thing();
}
     

   
   
  
use autocxx::include_cxx;

include_cxx!(
   Header("base/bob.h"),
   Allow("Bob"),
)

let a = ffi::base::bob::make_unique("hello".into());
a.do_a_thing();
     

使用rust在内核print

print是很重要的。如果某些东西不工作,您想知道为什么(例如,通过查看控制台输出)。当我第一次为内核驱动程序编写日志宏时,我没有考虑太多安全性问题。我只是想:“肯定没有人会用错误的格式说明符或错误的参数数量调用它,因为它的用法简单而直接”。

感谢各位的阅读,以上就是“怎么从Rust中调用c++的工具”的内容了,经过本文的学习后,相信大家对怎么从Rust中调用c++的工具这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI