gpt4 book ai didi

c++ - to_address 的具体用例

转载 作者:IT老高 更新时间:2023-10-28 21:51:24 27 4
gpt4 key购买 nike

显然 C++20 正在获得 std::to_address .

从 cppreference 页面来看,我似乎并不清楚它的用例。我们已经有了 operator&std::addressof,为什么我们还需要另一个函数来为我们的参数提供地址?

最佳答案

std::addressof 接受一个对象并获取其地址,即使一元“addressof 运算符”(又名 &)被重载。

std::to_address 接受一个智能或哑指针,并返回一个指针。

基本上在编写标准库时,在这种情况下分配器,实现者发现他们需要这个实用函数。它小而简单,每当有人想使用分配器时都必须编写它。所以他们写了一个简单的建议来添加它。

这里有一些陷阱;你不能这样做 std::addressof(*ptr) 因为 *ptr 并不总是一个对象。已经有一个 trait 可以解决这个问题,但是直接使用 trait 编写代码很烦人。


当他们还没有完成您最喜欢的功能时,为什么要这样做?喜欢网络?

相比之下,网络并不是一个简单的提议。而当前的设计依赖于执行器(基本上是线程池概念的抽象)。编写提供手工 C/ASM 性能的高级库的目标使得编写网络比 2 行实用程序函数更难。

然后有人提示他们需要 15 分钟来批准一个不费吹灰之力的实用程序函数,因为多程序员年度史诗提案尚未提出。不公平。

或者类似的东西。

关于c++ - to_address 的具体用例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56493697/

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