Rust中除关键字外是否有任何保留标识符(例如,以下划线开头)? C++中的P>Rust中的标识符是否有类似的规则?当然,关键字(如如果)不允许作为标识符,但除此之外:我可以使用我想要的任何标识符吗?

Rust中除关键字外是否有任何保留标识符(例如,以下划线开头)? C++中的P>Rust中的标识符是否有类似的规则?当然,关键字(如如果)不允许作为标识符,但除此之外:我可以使用我想要的任何标识符吗?,rust,language-lawyer,Rust,Language Lawyer,根据,标识符可以以下划线开头,除了长度(不仅仅是下划线)和关键字之外,似乎没有其他限制: 标识符是以下形式的任何非空Unicode(请参见注释)字符串: 或者 第一个字符具有属性 其余字符具有属性 或 第一个字符是 标识符不止一个字符,\本身不是标识符 其余字符具有属性 这不会发生在集合中 注:标识符中的非ASCII字符当前为特征选通字符 XID_start和XID_continue是Unicode;例如,数字(最明显的是)没有XID_start属性,因此作为标识符的第一个字符无效。对于

根据,标识符可以以下划线开头,除了长度(不仅仅是下划线)和关键字之外,似乎没有其他限制:

标识符是以下形式的任何非空Unicode(请参见注释)字符串:

或者

  • 第一个字符具有属性
  • 其余字符具有属性

  • 第一个字符是
  • 标识符不止一个字符,\本身不是标识符
  • 其余字符具有属性
这不会发生在集合中

注:标识符中的非ASCII字符当前为特征选通字符


XID_start和XID_continue是Unicode;例如,数字(最明显的是)没有XID_start属性,因此作为标识符的第一个字符无效。

对于未使用的参数,至少以一个下划线开头似乎是常见的做法。前奏曲和基于文本的宏的缺乏可能在很大程度上有助于减少保留标识符的数量。