gpt4 book ai didi

c++ - 参数引用有物理变量吗?

转载 作者:搜寻专家 更新时间:2023-10-31 01:51:09 24 4
gpt4 key购买 nike

参数引用有物理变量吗?例如在下面的代码中:

void scalewindowsize (HWND &ownerwin, HWND &childwin)
{
char buffer[100];
snprintf (buffer, 100,"%d", (intptr_t)&ownerwin);
MessageBox (NULL, buffer, "fail", NULL);
return;
}
scalewindowsize(somewindow, irrelevantwindow);
return;

snprintf 对 &ownerwin 的调用会返回变量 somewindow 的地址吗?或者它将地址返回给变量 ownerwin?如果它会返回某个窗口的地址,但引用的参数确实仍然会创建它们自己的变量,我该如何访问它们?

最佳答案

它将返回两者,因为 somewindowownerwin 是相同的。这就是引用(别名,具有不同名称的同一对象),这就是通过引用传递的作用。

当然,这里有一个微妙之处,以防 HWNDint 的对齐方式不同,在这种情况下,转换将返回不同的地址,但是尽管如此(虽然不太可能)。

关于c++ - 参数引用有物理变量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14139525/

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