C++ C++;溢出:没有足够的SRAM来保存代码

C++ C++;溢出:没有足够的SRAM来保存代码,c++,C++,我尝试编译一个C++代码,在这个代码中,我定义了两个大数组,每个元素有405个。 double a [405] = {...}; double b [405] = {...}; 然后我使用这个函数将它们转换为向量: std::vector<double> ArrayToVector(double* arr, size_t arr_len) { return std::vector<double>(arr, arr + arr_len); } 我尝试对以前使用的一些变量

我尝试编译一个C++代码,在这个代码中,我定义了两个大数组,每个元素有405个。
double a [405] = {...};
double b [405] = {...};
然后我使用这个函数将它们转换为向量:

std::vector<double> ArrayToVector(double* arr, size_t arr_len) {
return std::vector<double>(arr, arr + arr_len);
}

我尝试对以前使用的一些变量使用动态内存,但问题主要是由这个大数组引起的。有办法解决这个问题吗?也许是一种更好的方法来定义那些使用更少内存的数组。

有帮助吗?为什么不
std::vector coefs\u vec{…}直接?为什么您需要
a
?@tedlynmo我得到这个错误`错误:在C++98中'features_vec'必须由构造函数初始化,而不是由'{…}')和`错误:无法从''转换为'std::vector'。您需要使用C++98吗?它已经有20多年的历史了,从那时起,语言发生了很大的变化。您使用的编译器和编译器版本是什么?有帮助吗?为什么不使用
std::vector coefs_vec{…}直接?为什么您需要
a
?@tedlynmo我得到这个错误`错误:在C++98中'features_vec'必须由构造函数初始化,而不是由'{…}')和`错误:无法从''转换为'std::vector'。您需要使用C++98吗?它已经有20多年的历史了,从那时起,语言发生了很大的变化。您使用的编译器和编译器版本是什么?
std::vector<double> coefs_vec= ArrayToVector(a,405);
std::vector<double> ft_vec= ArrayToVector(b,405);
 error: sram_out/sram.elf section `.text' will not fit in region `int_main'
 error: region `int_main' overflowed by 35816 bytes
 collect2: error: ld returned 1 exit status