gpt4 book ai didi

c++ - 在 C++ 函数中返回字符串数组

转载 作者:IT老高 更新时间:2023-10-28 22:07:59 26 4
gpt4 key购买 nike

我是 C++ 新手。对于一个学校项目,我需要创建一个能够返回字符串数组的函数。

目前我的标题中有这个:

Config.h

string[] getVehicles(void);

Config.cpp

string[] Config::getVehicles(){
string test[5];
test[0] = "test0";
test[1] = "test1";
test[2] = "test2";
test[3] = "test3";
test[4] = "test4";

return test;}

显然这不起作用,但这就是我想要做的事情。在Java中,这将是做到这一点的方式。我试过用谷歌搜索我的问题,但我没有找到任何明确的答案。

最佳答案

也许在这种情况下使用 vector 会更好,但这不是问题的正确答案。它不起作用的原因是变量 test 只存在于您的函数范围内。所以你必须自己管理内存。这是一个例子:

string* getNames() {
string* names = new string[3];
names[0] = "Simon";
names[1] = "Peter";
names[2] = "Dave";

return names;
}

在这种情况下,您返回堆中位置的指针。堆中的所有内存都必须手动释放。所以现在你的工作是删除内存,如果你不再需要它:

delete[] names;

关于c++ - 在 C++ 函数中返回字符串数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7527356/

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