gpt4 book ai didi

C++ 函数参数将指针的地址作为参数。这是如何使用的?它是做什么用的?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:49:40 25 4
gpt4 key购买 nike

想象这样一个函数:

 function(Human *&human){
// Implementation
}

你能解释一下 *& 到底是什么吗?它的用途是什么?与仅传递指针或引用有何不同?你能给出一个小的解释性样本吗?

谢谢。

最佳答案

它就像一个双指针。您通过引用传递指针,允许“函数”函数修改指针的值。

例如,“human”可以指向 Jeff,函数可以修改它以指向 Ann。

Human ann("Ann");

void function(Human *& human)
{
human = &ann;
}

int main()
{
Human jeff("Jeff");
Human* p = &jeff;
function(p); // p now points to ann
return 0;
}

关于C++ 函数参数将指针的地址作为参数。这是如何使用的?它是做什么用的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13980482/

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