gpt4 book ai didi

c++ - 我们什么时候在 new (::new) 之前使用作用域解析运算符?

转载 作者:搜寻专家 更新时间:2023-10-31 00:54:47 26 4
gpt4 key购买 nike

我遇到了一段代码,其中作用域解析运算符放在 new 之前。我们什么时候使用它。这是什么意思。请问有人能解释一下吗?

最佳答案

::new 是显式全局运算符。这与可能定义的各种类作用域运算符 new 相反。例如,如果我在 myclass 中定义了一个 operator new,然后在同一个类中我想使用全局的,我会说 ::new,而如果我说 new,我会得到我定义的特定于类的函数。

我也可能在通用模板代码中使用 ::new ,我不确定我可能分配什么类型,但想确保我不使用任何特定于类的分配器(例如我可能需要将结果传递给一些将在其上使用全局 ::delete 的 API。

这里有一个包含所有可能运算符的大列表 new 以供引用:http://en.cppreference.com/w/cpp/memory/new/operator_new

关于c++ - 我们什么时候在 new (::new) 之前使用作用域解析运算符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44178893/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com