J'ai écrit un petit programme pour tester des vecteurs et je ne comprends pas pourquoi cela se bloque, quelqu'un pourrait-il m'aider? Ignorez les fuites de mémoire pour le moment, ce n'était qu'un exemple rapide.std :: crash de vecteur?
#include <iostream>
#include <algorithm>
#include <vector>
void print(int* i)
{
std::cout << i << std::endl;
}
int main()
{
std::vector<int*>* intPtr;
intPtr->push_back(new int(1));
intPtr->push_back(new int(2));
intPtr->push_back(new int(3));
std::for_each(intPtr->begin(), intPtr->end(), print);
}
'intPtr' est un pointeur non initialisé. –
(1) changer 'std :: vecteur * intPtr;' à 'std :: vecteur * intPtr = nouveau std :: vecteur ();' alors (2) [Lire ceci] (http: // dl. dropbox.com/u/6101039/Modern%20C%2B%2B.pdf). –
WhozCraig
Correction, merci !! – Shippage