首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我们能否应用C++标准的规范引用中没有明确引用的内容?

我们能否应用C++标准的规范引用中没有明确引用的内容?
EN

Stack Overflow用户
提问于 2014-04-11 18:44:24
回答 1查看 721关注 0票数 23

在C++11标准(http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2012/n3337.pdf)一节中,1.2规范参考文献指出:

下列参考文档对于本文档的应用是必不可少的。对于注明日期的参考资料,只适用于引用的版本。对于未注明日期的参考资料,适用参考文件的最新版本(包括任何修改)。

但没有关于如何应用这些参考资料的指导方针。简单的情况是,当C++11显式地引用引用时,例如在3.9.1基本类型中,它说:

...The有符号整数类型和无符号整数类型应满足C标准5.2.4.2.1节中给出的约束。

但其他没有明确提及的情况又如何呢?例如,C++11使用不确定值这个词,但它没有定义这个词。规范性参考资料包括:

- ISO/IEC 9899:1999,编程语言-C ..。 - ISO/IEC 9899:1999/Cor.3(E),编程语言- C,技术勘误3

C99(http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf)在3.17.2节中确实对不定值有一个定义,即:

未指定的值或陷阱表示

通过引用C++11 (如这个答案似乎适用于位的定义。 )来定义不确定值是正确的吗?如果是的话,那么在6.2.6.1第5节中,在C99中类型的表示下包含的陷阱表示又如何呢?

慷慨的解读是,只要C++11中没有任何与规范参考相冲突的地方,那么它就适用了,这是正确的解释吗?C++中的不确定行为是什么?它与未定义的行为有何不同?的一些答案似乎意味着一个慷慨的阅读,尽管语言在一些答案中有点松散,所以很难知道在某些方面到底有什么要求。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-11 19:49:41

国际标准化组织标准文件的规范参考部分的功能在ISO/IEC指令,第2部分,2011年第6.2.2节中定义:

6.2.2规范参考资料 这一条件要素应列出文件中引用的文件(见6.6.7.5),使之成为适用文件所必不可少的文件。凡注明日期的参考资料,均须附有其出版年份,如有查询或定稿,则须加上注明“待出版”的脚注及全名。未注明日期的参考资料,不得注明出版年份或破折号。如果一项未注明日期的提及是指一份文件的所有部分,则出版物编号后面应注明“(所有部分)”和系列部分的总标题(即介绍性和主要内容,见附件E)。 原则上,参考文件应是ISO和/或IEC公布的文件。其他机构发表的文件可以规范方式提及,但条件是: ( a)有关的ISO和/或IEC委员会承认所引用的文件具有广泛的接受和权威地位,并可供公众查阅, ( b)有关的ISO和/或IEC委员会已获得参考文件的作者或出版商(如知道的话)同意将其列入并按要求提供-作者或出版商应要求提供这些文件, ( c)作者或出版商(如知道的话)亦已同意通知有关的ISO及(或) IEC委员会他们拟修订所引用的文件及修订所涉及的各点,及 ( d)有关的ISO和/或IEC委员会承诺根据参考文件中的任何变化审查情况。 名单应以下列措词介绍: “下列文件全部或部分在本文件中以规范的方式引用,对于其应用是必不可少的。对于注明日期的参考资料,只适用于引用的版本。对于未注明日期的参考资料,适用参考文件的最新版本(包括任何修改)。“上述措词也适用于多部分文件的一部分。 清单不应包括以下内容:

  • 未公开的参考文件;
  • 仅以信息形式引用的参考文件;
  • 在编写文件时仅作为书目或背景材料的参考文件。

这类参考文件可列入参考书目(见6.4.2)。

值得注意的是,它并没有说所引用的文档的内容被包含到当前文档中。从本质上说,它是文档中以某种方式规范地引用的所有其他标准文档的列表。

因此,并不是C99中的所有内容都包含在C++11中--只有那些被专门引用为C++11标准中包含的C99部分。

票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23020323

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档