C++ 什么是;核心语言“;什么意思?

C++ 什么是;核心语言“;什么意思?,c++,gcc,C++,Gcc,在GCC文档的表中,其中一项(大约在表的一半)仅列为“核心语言”。这是什么意思?语言的哪些部分不包括在内?标准库是语言的一部分。为了表达只涉及语法规则、语义规则等而不涉及库的语言子集,人们使用术语核心语言。例如,在C++委员会中有一个工作组叫做“核心工作组”(CWG)和“图书馆工作组”(LWG)。 < P>人们通常指C++的所有内容,除了标准库之外,这也是语言规范的一部分。 作为一个更权威的例子,Stephan T. Lavavej(STL)是微软上的一个关键C++开发人员。在他关于核心语言的系

在GCC文档的表中,其中一项(大约在表的一半)仅列为“核心语言”。这是什么意思?语言的哪些部分不包括在内?

标准库是语言的一部分。为了表达只涉及语法规则、语义规则等而不涉及库的语言子集,人们使用术语核心语言。例如,在C++委员会中有一个工作组叫做“核心工作组”(CWG)和“图书馆工作组”(LWG)。

< P>人们通常指C++的所有内容,除了标准库之外,这也是语言规范的一部分。

作为一个更权威的例子,Stephan T. Lavavej(STL)是微软上的一个关键C++开发人员。在他关于核心语言的系列讲座中,他将其定义为您可以访问的任何内容,而不包括任何标题。

他不认为自己是一个核心的语言开发者。例如,他致力于
shared_ptr
,这是C++11的一个基本部分,可以说比注释中提到的字符串和流更基本

C++标准没有提到核心语言,但标准库是

我认为第1-16章(几乎?)只涉及核心语言,但可能还有更多内容。

约翰内斯解释了“核心语言”的一般含义。在您询问的特定上下文中,这意味着的核心语言部分是在GCC 4.7中实现的,但不一定是库部分(与适用于第17-30条的文件的更改)


事实上,GCC 4.7中也实施了一些库更改,但库状态记录在案

除STL外的所有内容都将包括流和字符串。:)第17条也是图书馆的一部分,我不同意委员会中的大多数人称之为标准模板图书馆,他们称之为标准图书馆。再读一遍,我并没有说他们把标准库称为STL;他们是18个语言支持库中的人。像
operator new
operator delete
type_info
,这些都需要编译器和库之间的密切合作。@PeteBecker,operator new在标准中被明确称为标准库,但我想很少有人这样谈论和思考它。
17 Library introduction
18 Language support library
19 Diagnostics library
20 General utilities library
21 Strings library
22 Localization library
23 Containers library
24 Iterators library
25 Algorithms library
26 Numerics library
27 Input/output library
28 Regular expressions library
29 Atomic operations library
30 Thread support library