文档给出了用和不带 括起来的 sxparse
的名称示例,如下面的两个命令所示。这两者在功能上有什么区别吗?我从不使用括号,最好谨慎行事。 \NewDocumentCommand
braces
braces
\documentclass{article}
%=======================
\usepackage{xparse}
%-----------------------
\ExplSyntaxOn
\NewDocumentCommand\myExp{m}{#1}
\NewDocumentCommand{\myExpAlt}{m}{#1}
\ExplSyntaxOff
%-----------------------
\begin{document}
\myExp{101}
\myExpAlt{123}
\end{document}
答案1
\newcommand
只要您向其传递控制序列,就没有任何区别,类似于 和 朋友使用的符号。从技术上讲,您将参数传递给\newcommand
,然后\def
在内部使用 进行设置,因此您应该使用{<csname>}
。但是,如果您不使用括号,则会抓取第一个标记。