2016-03-20 32 views
0

ben c bazı fonksiyonlarını test ediyorum ++ ama bu kod kullanıldığında bu derleme ancak programım var hata ile başarısız: std :: bad_alloc Ben yeterince bellek yoksa veya vektör de büyükVektörle ilgili bir sorun mu var? Bellek?

olduğu için düşünüyorum
#include <iostream> 
#include <vector> 
#include <ctime> 

using namespace std; 

int main(void){ 

int temps = time(0); 
vector<int> vec(temps, 20); 
for(int i(0); i < vec.size() ;i++){ 
    cout << vec[i] << endl; 
}; 
} 
+5

"temps" öğesinin değerini yazdırın. * Şaşırtıcı bir şekilde * büyük olduğunu görebilirsiniz. – usr2564301

+0

'int i (0)' Bu yanlış görünüyor. –

+2

@AkshayArora, tamamen yasal. C'tor sözdizimi yerleşik türler için de geçerlidir .. – StoryTeller

cevap

2

time(nullptr) döner etrafında 1458495645. Yani şu anda yaklaşık 1,5 milyar kez sayı 20 ile std :: vector başlatılıyor şu anda 1970 yılında 1 Ocak beri saniye sayısı. sanırım sen farklı bir niyet vardı.

+0

öğrenmeye başladım Evet, sadece işe yaramaz olduğunun farkındayım. Cevap için teşekkürler –

İlgili konular