为了固定想法,请考虑以下示例。我可以定义命令
\def\linefill{\kernel@ifnextchar[{\@@linefill}{\@linefill}}
\def\@linefill{\@@linefill[1ex]}
\def\@@linefill[#1]{%
\leavevmode\leaders\hrule height #1\hfill\kern0pt%
}
或者我可以将其定义为
\newcommand\linefill[1][1ex]{%
\leavevmode\leaders\hrule height #1\hfill\kern0pt%
}
第一种形式使用低级命令,而第二种形式使用高级命令。显然第二种形式更短,但我相信使用高级 LaTeX 命令会带来一些开销。
从这个意义上讲,我想知道以下几点:
- 类/包编程是否存在(事实上的)标准?
- 低级是否更高效?性能上有什么区别吗?
- 有什么理由选择其中一种形式而不是另一种形式呢?
非常感谢您的回答!