首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我如何在用户空间中实现像`format_args!这样的复杂宏?

我如何在用户空间中实现像`format_args!这样的复杂宏?
EN

Stack Overflow用户
提问于 2019-05-18 08:23:23
回答 1查看 233关注 0票数 0

我喜欢Rust附带了许多宏,它将计算移动到编译时,而不是重复地运行时。

print!及其使用format_args! 见源代码的所有变体都是很好的例子。

不幸的是,在源代码中,您看到的是注释/* compiler built-in */,而不是源文件中的直接实现。

Rust有能力让用户编写像宏这样复杂的逻辑吗?如果是的话,我怎样才能做到呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-18 08:34:10

复杂宏通常是作为过程宏实现的,您可以在https://doc.rust-lang.org/book/ch19-06-macros.html#procedural-macros-for-generating-code-from-attributeshttps://doc.rust-lang.org/reference/procedural-macros.html#procedural-macros书籍中更多地了解这些宏。

您还可以使用所谓的声明性宏来完成非常复杂的任务,看看优秀的https://danielkeep.github.io/tlborm/book/index.html

在YouTube上有几个关于这些问题的讨论,但您可能会发现以下内容特别有趣,这是由克里斯·黄( Chris )在2018年的“我的小程序宏”( My Little Procedural )上发表的:

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56197213

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档