在类中定义变量

在类中定义变量

我正在尝试弄清楚如何在类中使用变量。

来自另一个问题(用于在类文件中声明变量的宏)我开始了。但是,我发现自己需要使用四行或相当不清楚的代码。这是我所拥有的:

\let\@headertitle\relax
\def\headertitle#1{\def\@headertitle{#1}}
\newcommand{\printheadertitle}{\@headertitle}
\printheadertitle{} % This will print the string in the variable

它能用,但看起来不太好。我只想\headertitle{string}在我的文档中使用它,并且能够以某种方式调用它(例如\headertitle{}在我的课堂中)。我可以简化这一点吗?

答案1

第一行和第四行没有什么用处,所以你可以通过删除它们来简化,然后:

如果您的课程或套餐代码有

\def\headertitle#1{\def\@headertitle{#1}}
\newcommand{\printheadertitle}{\@headertitle}

那么你的文件就可以了

\headertitle{hello world}

并且之后的任何时候

\printheadertitle

将产生hello world

这意味着如果\printheadertitle使用时没有定义标题,您将会得到错误。如果您希望默认标题被默认接受,请在您的类代码中添加

\headertitle{}

或者一些非空的默认值。

相关内容