为什么在 \maketitle 过程中清除 \@title、\@author 和 \@date?

为什么在 \maketitle 过程中清除 \@title、\@author 和 \@date?

(这是不是重复的如何在 maketitle 之后使用@author、@date 和 @title?

我知道这\maketitle会重置一堆宏,包括\@title、、和它本身。我认为这是\@author有充分理由的,我想知道是什么原因。\@date\maketitle

简单介绍一下背景,我正在编写自己的类,重新定义\maketitle打印标题页,格式为我所在大学要求的论文和学位论文格式。标题页包含一些信息,例如预期学位,这些信息的处理方式可能与标题和作者类似(即提供\degree设置内部宏的宏\@degree)。

看来我对重新定义有几个选择\maketitle

  1. 我可能很懒,不想重新设置任何东西。
  2. 我可以模仿标准行为并重置\title,,\@title......
  3. 我可以超越这一点并重置我的新(类似)宏\degree,,\@degree...

到目前为止,我选择了第三个选项,但我不知道为什么。有什么好的理由\maketitle要重置文档信息宏吗\title

答案1

article.cls(参见)的文献classes.pdf

我们重置了脚注计数器,禁用 \thanks 和 \maketitle,并通过清空内部信息宏来节省一些存储空间。

这是早期 tex 系统的限制所致,其中池大小和内存等方面都受到限制。TeX 的原始设计中的大部分元素都经过精心挑选,以充分利用可用空间。在现代设置中,这几乎从来都不是问题。一个仍然存在的有趣限制是可以加载的数学字母表的数量。

相关内容