快捷搜索:  汽车  科技

rust宏语法(Rust强大的宏语法)

rust宏语法(Rust强大的宏语法)其中现在我们就可以编写自己的宏了,比如写个简单的echo!,把输入的数字都打印出来上图中的echo!三种调用方法都可以。

有C/C 基础的同学应该知道,“宏”作为代码的模板是非常强大的,不过在大量使用了C/C 的宏之后,感觉就是种噩梦,我们今天来看一下Rust是如何优雅的实现“宏”功能。

先来看一下Rust最常用的vec宏的用法

rust宏语法(Rust强大的宏语法)(1)

它其实是定义如下

rust宏语法(Rust强大的宏语法)(2)

我们来解析一下,Rust的宏语法结构如下

rust宏语法(Rust强大的宏语法)(3)

其中

  • 宏参数名:是以美元符号开始的,比如 $x
  • expr:是rust内建的表达式类型
  • 分隔符:只能是 => ;
  • 重复模式:类似正则表达式的定义,只能是 ? *

现在我们就可以编写自己的宏了,比如写个简单的echo!,把输入的数字都打印出来

rust宏语法(Rust强大的宏语法)(4)

上图中的echo!三种调用方法都可以。

猜您喜欢: