【发布时间】:2022-11-30 17:20:32
【问题描述】:
抱歉,如果这是预先重复的。
我试图在 C++ 中的函数中返回一个布尔数组,其中数组的大小被声明为数组的参数。
我可以做这样的事情吗?
bool returnBools(int size) {
bool returnValue[size];
// Do some stuff with array
return returnValue;
}
【问题讨论】:
-
在 C++ 中,不可能从函数返回数组。请改用
std::vector。 -
是的,当您使用
std::vector而不是 C 样式数组时。 -
声明的返回类型
bool是一个单身的值,而不是数组。而且你不能返回一个 C 风格的数组,因为它会衰减到一个指针(指向它的第一个元素),并且该指针将在函数返回后立即失效。还有C++ doesn't have variable-length arrays。使用std::vector<bool>代替,“数组”和返回类型。
标签: c++ arrays function boolean