Шаблон:Enum add: различия между версиями
Перейти к навигации
Перейти к поиску
(Новая страница: «<includeonly>{{#vardefine:enum_val|1}} <tr id="constant_list_tr"><td><tt>{{{1}}}</tt></td><td>{{{value|{{#var:enum_val}}}}}</td><td>{{{2}}}</td></tr>{{#vardefine:…») |
|||
(не показаны 3 промежуточные версии этого же участника) | |||
Строка 1: | Строка 1: | ||
<includeonly>{{#vardefine: | <noinclude>{{Enum usage}}</noinclude><includeonly>{{#vardefine:enum_val_name|{{#explode:{{{1}}}|::|1}}}}{{#vardefine:enum_val_name|{{#if:{{#var:enum_val_name}}|{{#var:enum_val_name}}|{{#explode:{{{1}}}|::|0}}}}}}<tr id="constant_list_tr"><td><tt>{{#ifexist: {{{1}}}|[[{{{1}}}|{{#var:enum_val_name}}]]|{{#var:enum_val_name}}}}</tt></td><td>{{{value|{{#var:enum_val}}}}}</td><td>{{{2|{{{{{1}}} brief}}}}}</td></tr>{{#vardefine:enum_val|{{#expr: {{{value|{{#var:enum_val}}}}} + 1}}}}</includeonly> | ||
<tr id="constant_list_tr"><td><tt>{{{1}}}</tt></td><td>{{{value|{{#var:enum_val}}}}}</td><td>{{{2}}}</td></tr>{{#vardefine:enum_val|{{#expr: {{#var:enum_val}} + 1}}}}</includeonly> |
Текущая версия на 17:57, 11 декабря 2017
Шаблоны Шаблон:enum_begin, Шаблон:enum_add и Шаблон:enum_end позволяют описать поля перечисления C++. Шаблон:enum_begin задает начало перечисления, Шаблон:enum_end задает конец перечисления, а Шаблон:enum_add, специализируемый внутри Шаблон:enum_begin и Шаблон:enum_end, позволяет добавить в перечисление новый элемент.
Первый параметр шаблона Шаблон:enum_add задает имя описываемого поля перечисления, второй параметр - текстовое описание. Опциональный параметр value позволяет ассоциировать с добавляемым полем перечисления произвольную пользовательскую константу. По умолчанию, для первого значения перечисления значение целочисленной константы - 0, для второго - 1 и т.д.
Использование:
{{enum_begin}} {{enum_add|Val0|Значение Val0.}} {{enum_add|Val1|Значение Val1.}} {{enum_add|Val20|Значение Val0.|value=20}} {{enum_add|Val21|Значение Val1.}} {{enum_add|Val22}} {{enum_add|ThisEnum::Val23|С указанием перечисления.}} {{enum_end}}
Результат:
Символическое имя | Целочисленное значение | Описание |
---|---|---|
Val0 | 0 | Значение Val0. |
Val1 | 1 | Значение Val1. |
Val20 | 20 | Значение Val0. |
Val21 | 21 | Значение Val1. |
Val22 | 22 | Шаблон:Val22 brief |
Val23 | 23 | С указанием перечисления. |