如何使表格单元格内的 \@namedef 具有更广泛的范围?

如何使表格单元格内的 \@namedef 具有更广泛的范围?

如何使\@namedef表格单元格内的定义定义一个可在该单元格外重复使用的名称?例如:

\documentclass{article}
\begin{document}
\makeatletter

  \begin{tabular}{ll}
  \hline
  1 & \@namedef{name}{content}\@nameuse{name} \\
  2 &                         \@nameuse{name} \\
  \hline
  \end{tabular}

\makeatother
\end{document}

当前输出为:

在此处输入图片描述

但预期的输出是:

在此处输入图片描述

答案1

你可以使用

\global\@namedef 

但这样它就具有全局作用域了。它还对实现做出了假设,\@namedef但这些假设是正确的,但例如你不能\global在宏之前使用一般宏,\global\newcommand这根本不起作用。

相关内容