Я пытаюсь исправить ошибку ошибки сегментации, которая возникает, когда я запускаю программу на C++, вызванную структурой, которую я называю слишком большой. Я ищу способ использовать мою ранее существовавшую структуру C++ и переместить ее из стека в кучу.Ошибка сегментации из-за большого 2D-массива в структуре C++
Мой код выглядит следующим образом:
n = 300;
struct arrayStruct {
double arr[n][n];
};
int main(int argc, char *argv[]){
arrayStruct temperature;
// do a bunch of stuff including passing and receiving the arrayStruct within a few functions
return 0
}
Я попытался с помощью таНос и новый, но, кажется, только получить ошибки, которые я не имею ни малейшего представления о том, как их исправить. Я пробовал в структуре, а также в основном файле, но не могу заставить его работать.
Заранее спасибо
Я не могу заставить его обратиться к структур. Если бы я смотрел на простой 2D-массив, который определен только в функции, я был бы хорош. Проблема в том, что я получаю ее в 2D-массив в структуре. – jeremy
Просто выделите экземпляр 'arrayStruct' в куче:' std :: unique_ptr temperature (new arrayStruct()); ' –