全局new和delete运算符的定义

时间:2012-07-05 12:01:32

标签: c++ new-operator definition delete-operator

哪个库有全局new和delete运算符的定义?具体来说,库中的哪个文件包含这些运算符的定义?

2 个答案:

答案 0 :(得分:3)

未指定定义它们的位置,但指定它们在标题<new>中声明。 (如果您只使用非展示位置<new>表达式使用的标准版本,则不必包含new,这些版本可在所有翻译单元中自动使用。)

答案 1 :(得分:3)

operator newoperator delete(及其数组形式)的非展示形式在每个翻译单元的全局范围内隐式声明。

标准展示位置表单在<new>中声明。

通常不提供库函数的定义。您的供应商可能会提供货源,在这种情况下,他们会在某处。

虽然,根据您的评论,您可能在谈论在 new-expression 中使用new,而不是分配内存的operator new函数。 new-expression 由编译器处理,生成对operator new和对象构造函数的必要调用。任何地方都可能没有具体的实施方案;你需要查看编译器代码生成器的相关部分。