错误:\reserved@a 定义中的参数编号非法

错误:\reserved@a 定义中的参数编号非法

当我在表格环境中使用时\caption{$\E_\A(D)$ where $\ora{UF}\!_n$}出现一些错误。

错误 :

Only one # is allowed per tab. ...crcr }}}_n$\relax }}{95}{table.caption.41}

错误 :

Illegal parameter number in definition of \reserved@a. \caption{$\E_\A(D)$ where $\ora{UF}\!_n$}

这里\E代表\mathscr{E}\A代表\text{\k{A}}\ora代表\overrightarrow

请帮忙解决这个问题。

答案1

\overrightarrow不够稳健,在移动参数中会中断。使用以下方法保护它\protect

\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{caption}
\usepackage[mathscr]{euscript}
\usepackage[T1]{fontenc}
\usepackage{hyperref}
\newcommand*{\A}{\text{\k{A}}}
\newcommand*{\E}{\mathscr{E}}
\newcommand*{\ora}{\overrightarrow}
\begin{document}
\listoffigures
\begin{figure}
\caption{$\E_\A(D)$ where $\protect\ora{UF}\!_n$}
\end{figure}
\end{document}

结果

选择:

\DeclareRobustCommand*{\ora}{\overrightarrow}

那么\ora是强大的并且\protect不需要。

相关内容