[英]std::bad_alloc on declaration of a list c++
我正在嘗試使用列表並創建包含整數的列表的列表。 在運行代碼后,它會解決一個錯誤的alloc異常:
“在拋出'std :: bad_alloc'what()實例之后調用的aterminate:std :: bad_alloc
該應用程序已請求運行時以一種異常方式終止它。 請與應用程序的支持團隊聯系以獲取更多信息。”
#include <iostream>
#include <list>
#include <string>
int main() {
std::list<int> l{1,2,3,4};//
std::list<int> l1{5,6,7,8};
std::list<std::list<int>> ll;// list of lists<int>
std::cout << "a"; //does not reach here, terminated before this row
ll.push_back(l);
ll.push_back(l1);
std::list<std::list<int>>::iterator itr;
for (itr=ll.begin(); itr != ll.end(); itr++)
{
std::list<int>tl=*itr;
std::list<int>::iterator it;
for (it=tl.begin(); it != tl.end(); it++)
{
std::cout<<*it;
}
std::cout<<std::endl<<"End"<<std::endl;
}
return 0;
}
我正在使用minGW在Windows 10的Clion中運行它。 我怎樣才能解決這個問題? 一切似乎都正確。
我在Visual Studio 2015中編譯了您的代碼。您的代碼進行了編譯,沒有錯誤,輸出如下。
a1234
結束
5678
結束
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.