mercredi 21 janvier 2015

Could not convert from brace-enclosed initializer list to std::vector

I saw a lot of similar questions, but I don't think I saw quite the same one. It's pretty basic. Some code from my lecturer is failing to compile, and I distilled the problem to this test case:



void foo(vector<int> v) {
}

void fooUsage() {
foo({0, 1, 2});
}


This fails with:


could not convert '{0, 1, 2}' from '<brace-enclosed initializer list>' to 'std::vector<int>


Note: It works on GCC 5.0.0 20141228 but fails on my GCC 4.7.1 (tdm-1).


Sorry if this is too basic but I don't know C++11 very well.


Aucun commentaire:

Enregistrer un commentaire