Template:stddoc

来自cppreference.com
[编辑] [{{purge}}] 模板文档

WG21

生成到 C++ 工作组 (WG21) 文档的链接,它们分别是 CWG/LWG 的页面或“提案”文件。

{{wg21|CWG 或 LWG 或 WG21 文档编号 |full (可选)}}

参数 full (可选) 仅对“提案”文档有效,使用它会导致产生一个额外的到 GitHub 页面的链接(这是WG21 处理提案的地方)。

stddoc

用于生成到 WG14/WG21 文档的链接。

如果未提供值为 ccpp 的实参语言 (可选)(若支持),否则由 {{get lang}} 指定工作组/语言(C 或 C++)。

{{stddoc|文档编号 |链接标题 (可选)|lang=语言 (可选)}}

生成一个到 WG14/WG21 指定编号的文档的链接。可以提供自定义的链接标题,默认标题是大写的文档编号。在 C 模式中,文档编号 可以带有文件扩展名,如 n2081.htm。在 C++ 模式中,由于 wg21.link 的服务自动化而无需知道/传递扩展名。
  • 示例:{{stddoc|p2443r1}} 结果为 P2443R1
  • 示例:{{stddoc|P2443R1|views::chunk_by}} 结果为 views::chunk_by
  • 示例:{{stddoc|n2731|C23 draft|lang=c}} 结果为 N2731
  • 示例:{{stddoc|n2081.htm|n2081|lang=c}} 结果为 n2081

{{stddoc latest draft|链接标题 (可选)|lang=语言 (可选)}}

生成一个到下个 C/C++ 版本的最新草案的链接。
  • 现在 {{stddoc latest draft}} 结果为 N5008
  • 现在 {{stddoc latest draft|最新 C++ 草案}} 结果为 最新 C++ 草案
  • 现在 {{stddoc latest draft|最新 C 草案|lang=c}} 结果为 最新 C 草案

stddocs

{{stddocs|文档列表 |input-separator=空白 (可选)|output-separator=换行 (可选)}}

  • 用于产生一组 WG14/WG21 文档链接的列表的便利模板,它将输入列表的各个元素包装到 {{stddoc}} 模板中。
  • 文档列表 — 第一个位置参数,为输入的文档列表。如果未提供第二个参数,那么输入列表的元素必须以空白分隔,如 {{stddocs|P0202R3 P0879R0 LWG3256 LWG3792}}。如果未提供第三个参数,那么输出链接之间以 <br> 分隔。
  • input-separator — 第二个位置参数。如果提供,则定义输入列表分隔符。
  • output-separator — 第三个位置参数。如果提供,则定义输出列表分隔符。
  • 限制:输入列表最多支持 8 个元素。
  • 示例:{{stddocs|P0202R3 P0879R0 LWG3256 LWG3792}} 产生:
P0202R3
P0879R0
LWG3256
LWG3792
  • 示例:{{stddocs|P0202R3, P0879R0, LWG3256, LWG3792|,}} 产生:
P0202R3
P0879R0
LWG3256
LWG3792
  • 示例:{{stddocs|P0202R3/P0879R0/LWG3256/LWG3792|/|—}} 产生:
P0202R3P0879R0LWG3256LWG3792

stdinfo

用于提供 C/C++ 标准化的信息。

如果未提供值为 ccpp 的实参 语言 (可选)(若支持),否则由 {{get lang}} 指定语言(C 或 C++)。

{{stdinfo latest draft|修订 或 文档 或 日期 |lang=语言 (可选)}}

此为 C/C++ 标准草案信息的集合体。根据第一个参数的,所返回的信息为:
信息 示例
修订 版本号 {{stdinfo latest draft|rev}} 结果为 26

{{stdinfo latest draft|rev|lang=c}} 结果为 2y

文档 文档号 {{stdinfo latest draft|doc}} 结果为 n5008

{{stdinfo latest draft|doc|lang=c}} 结果为 n3467

日期 文档日期 {{stdinfo latest draft|date}} 结果为 2025-03-15

{{stdinfo latest draft|date|lang=c}} 结果为 2025-02-09

以下更高层模板中使用了此模板:
{{stdinfo latest draft docnum}}、{{stdinfo latest draft docdate}}、{{stdinfo next version number}}、{{stdinfo next version}}

{{stdinfo latest draft docnum|lang=语言 (可选)}}

C/C++ 标准最新草案的文档编号。
  • 对 C 结果为 n3467。
  • 对 C++ 结果为 n5008。

{{stdinfo latest draft docdate|lang=语言 (可选)}}

C/C++ 标准最新草案的成文日期。
  • 对 C 结果为 2025-02-09。
  • 对 C++ 结果为 2025-03-15。

{{stdinfo next version number|lang=语言 (可选)}}

下个 C/C++ 标准的版本号。
  • 对 C 结果为 2y。
  • 对 C++ 结果为 26。

{{stdinfo next version}}

下个 C/C++ 标准版本(带有前缀 C 或 C++)。结果为 C++

{{stdinfo current version number}}

当前 C/C++ 标准的版本号。结果为 20

{{stdinfo current version}}

当前 C/C++ 标准版本(带有前缀 C 或 C++)。结果为 C++20

当前语言

返回页面默认使用的编程语言。输出值取决于包含本模板的页面的标题。

{{get lang}}

如果页面标题以 "c/" 开始,那么输出值是 "c",如果页面标题以 "cpp/" 开始,那么输出值是 "cpp"。否则输出值是 "cpp"。

{{get lang formal}}

如果页面标题以 "c/" 开始,那么输出值是 "C",如果页面标题以 "cpp/" 开始,那么输出值是 "C++"。否则输出值是 "C++"。

POSIX

{{posix|页面 (可选)|等宽标题 (可选)|任意标题 (可选)}}

生成到POSIX 函数的文档页面的链接。此模板内部使用了 {{posix/core}}(见下文)。
  • 页面 - 排除 .html 扩展的页面名(会添加扩展)。如果未提供其他参数,那么它也被用作等宽字体的标题。
  • 等宽标题 - 如果提供,将用作等夸字体的标题。
  • 任意标题 - 如果提供,将原样用作标题。此参数的优先级高于等宽标题,即如果提供,则忽略等宽标题
示例

{{posix/core|链接部分与标题 (可选)}}

如果提供了此链接的“稳定”部分,就生成到 POSIX 文档页面的连接。
每当 POSIX 版本和指向其文档页面的根链接改变时,都应当更新这个模板。
  • 如果未提供参数,则生成到文档根的链接,并以 POSIX 版本为其标题,例如,{{posix/core}} 产生 POSIX.1-2024/IEEE Std 1003.1-2024
  • 否则,参数应当是链接的“稳定”部分,且后跟标题,例如,
{{posix/core|basedefs/V1_chap04.html#tag_04_16 纪元}} 产生 纪元