gpt4 book ai didi

c++ - 在序列 "&*B"中立即使用引用和取消引用运算符的目的是什么?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:01:32 26 4
gpt4 key购买 nike

我在我们的代码中看到过几次,这让我立刻产生了怀疑。但由于我不知道最初的意图,所以我对删除它犹豫不决。

//requires double indirection which I won't go into
FooClass::FooFunction(void ** param)
{
//do something
}

SomeClass * A = new SomeClass();
SomeClass **B = &A;
FooFunction( reinterpret_cast<void**>(&*B) ); // what is happening here?

“&*B”部分是有问题的部分?随意整合对重新解释类型转换的解释,但我对类型转换技术非常熟悉。

最佳答案

我对迭代器做过类似的事情 - 取消引用迭代器以获得引用,然后执行“&”运算符以获得指针。

不过我不明白为什么它会在这里做任何事情。如果“&*”右侧的类型是指针类型,则它什么都不做。

关于c++ - 在序列 "&*B"中立即使用引用和取消引用运算符的目的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1411821/

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