函数内部的数组

时间:2018-09-09 02:27:39

标签: c++ arrays function

我想像这样在函数内部创建一个数组:

int function(int a){
    int something[a]{};
    return something;
}

,但出现下一个错误“表达式必须具有恒定值”。

1 个答案:

答案 0 :(得分:-2)

您的代码实际上没有意义,您试图创建一个数组something,然后从应该返回int的函数中返回一个数组。 根据您的意图进行猜测

如果要从基于索引int的数组返回a,则可以:

test.cpp

#include <iostream>

int function(int a){
    int something[] = {1,2,3};
    return something[a];
}

int main()
{
    std::cout << function(1) << std::endl;
}

使用$ g++ test.cpp -o test进行编译 使用$ ./test

运行