Часто на SO (и в других местах) я видел утверждение, что примечания и примеры в стандарте C ++ не нормативный — я, наверное, сам несколько раз заявлял об этом.
Однако я не смог найти доказательства этого факта в спецификации основного языка стандарта C ++ (в данный момент я смотрю на рабочий проект n3979 для C ++ 14).
Самая близкая цитата, которую я мог найти, находится в пункте 17.5.1.2/2:
Пункты, помеченные «Примечание (я):» или «Пример (ы):», являются информативными, другие пункты являются нормативными.
Однако, если я не ошибаюсь, этот абзац относится только к части Библиотеки (т.е. пункты 18-30 и Приложение D).
Отсюда вопрос: Являются ли все примечания и примеры в Стандарте C ++ ненормативными? Как насчет сносок?
См. §6.5 Директивы ИСО / МЭК, часть 2. Примечания, примеры и сноски считаются «информационными», а не «нормативными».
Для заметок и примеров:
Примечания и примеры, включенные в текст документа, должны использоваться только для
дополнительная информация, предназначенная для облегчения понимания или использования документа. Они должны
не содержать требований («должен»; см. 3.3.1 и таблицу H.1) или любой рассматриваемой информации
Незаменим для использования документа, например, инструкции (обязательно; см. таблицу H.1),
рекомендации («должен»; см. 3.3.2 и таблицу H.2) или разрешение («может»; см. таблицу H.3).
Примечания могут быть написаны как констатация факта.
Для сносок:
Сноски к тексту дают дополнительную информацию; их использование должно быть сведено к минимуму. Как есть
в случае примечаний и примеров, включенных в текст (см. 6.5.1), сноски не должны содержать
требования или любую информацию, которая считается необходимой для использования документа.
Однако обратите внимание, что сноски к рисункам и таблицам Можно содержать требования.
Это общее для всех Стандартные документы ISO:
Пример, интегрированный в текст документа, используемый для предоставления
дополнительная информация, предназначенная для содействия пониманию или использованию
документ. В стандартах ISO примеры без исключения
ненормативный.
Аналогичное положение применяется к примечаниям:
Примечание, интегрированное в текст документа, используется для
дополнительная информация, предназначенная для содействия пониманию или использованию
документ. В стандартах ISO примечания без исключения
ненормативный.
Способ написания Стандарта — все, что требуется для соответствия реализации, — это то, что она способна обрабатывать по крайней мере одну — возможно, надуманную и бесполезную — программу. Однако для того, чтобы любая реализация была полезна для чего-либо, она должна выходить за рамки общих требований Стандарта.
В то время как реализация не должна вести себя в соответствии с примерами, чтобы соответствовать, реализации, которые делают это, как правило, должны считаться превосходящими те, которые не соответствуют. Вопрос о том, следует ли рассматривать реализацию, которая этого не делает, является достаточно качественным, чтобы быть полезным для какой-либо конкретной цели, зависит от рассматриваемой цели и причины неудачи.