gpt4 book ai didi

C++ 指针类型和引用调用

转载 作者:行者123 更新时间:2023-11-27 23:01:44 25 4
gpt4 key购买 nike

我在编写程序时遇到指针类型问题。代码如下所示:

datatype B;
int func(datatype* A){
A=&B;
};
int main(int argc,char** argv){
dataType* mainA=new dataType;
func(mainA);
}

我想要的是在执行func(mainA)之后。 mainA是指向B的。我知道我的代码是错误的,之后mainA没有改变。我认为这应该像所谓的按引用调用。谁能帮我解决这个问题?

非常感谢。

最佳答案

您可以使参数成为对指针的引用。最后,指针也是对象,可以通过引用进行修改。

int func(datatype*& A)
{
A = &B;
}

但是,我更愿意返回结果并赋值:

datatype* func()
{
return &B;
}

// […]

dataType* mainA = func();

关于C++ 指针类型和引用调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26892196/

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