gpt4 book ai didi

c++ - 通过引用将 unique_ptr 传递给函数

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:21:06 29 4
gpt4 key购买 nike

我注意到我正在编译的某些库中的行为有点出乎意料,我想澄清一下。

有一个类具有以下形式的方法:

void notify(Frame & frame);

现在,有一个使用 unique_ptr 的调用者,如下所示:

std::unique_ptr <Frame> localFrame (new Frame(rows, cols));

现在当它调用它的方法时:

obj->notify(*localFrame);

因此这依赖于将底层指针隐式转换为引用。

我的问题是这是跨平台和预期的行为吗?我做这样的事情有什么用吗:

obj->notify(*localFrame->get());

最佳答案

“一些隐式转换”是 std::unique_ptr::operator*这是一个非常标准的运算符,它返回对指向对象的引用。您无需将其复杂化。

关于c++ - 通过引用将 unique_ptr 传递给函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49900128/

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