gpt4 book ai didi

c++-cli - 在 C++/CLI 中通过引用传递参数,因此重新分配会影响调用者

转载 作者:行者123 更新时间:2023-12-02 12:43:25 25 4
gpt4 key购买 nike

也许这不是一个困难的问题,但我总是对如何在 Visual C++ 中将 String 类型视为参数感到有点困惑。我有以下功能:

void function_1(String ^str_1)
{
str_1 = gcnew String("Test");
}

void function_2()
{
String ^str_2 = nullptr;
function_1(str_2);
}

调用function_1后,str_2仍然等于null,但我想要实现的是str_2 > 等于测试。那么,如何实现将str_1的内容传递给function_2呢?

感谢您的建议。

最佳答案

使用 tracking reference :

void function_1(String ^%str_1)
{
str_1 = gcnew String("Test");
}

说明:传递String ^就像传递一个指针。仅对引用的本地副本进行更改。 String ^% 就像将引用传递给引用...就像在调用应更改原始指针的函数时将指针传递给指针一样。

关于c++-cli - 在 C++/CLI 中通过引用传递参数,因此重新分配会影响调用者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3059992/

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