2017-01-06 60 views
0

我想玩清單,並創建一個包含整數列表的列表。 後,我運行的代碼它thorws一個壞的alloc例外:性病:: bad_alloc列表聲明C++

此應用程序已請求運行時的std :: bad_alloc的:

「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上運行它。 我該如何解決這個問題?一切似乎都對。

+5

[在這裏工作(http://coliru.stacked-crooked.com/a/e6eabec99e96e2e7) – NathanOliver

+1

這工作與Visual Studio –

+0

我懷疑這是與http://stackoverflow.com/questions/20621639/stdendl-crashes-windows-8-compiled-using-mingw或http://stackoverflow.com/questions/11975941/simple-program有關 - 標準庫'cout' /'endl' ha的崩潰d某種圖書館ABI不匹配。 –

回答

0

我在Visual Studio 2015中編譯了你的代碼。你編譯的代碼沒有錯誤,輸出如下。

A1234

+0

嗨,歡迎來到堆棧溢出。請添加代碼。就目前而言,很難說這個問題是什麼 –