Je n'arrive pas à comprendre pourquoi g ++ continue de se plaindre de l'iter?Utilisation du type générique avec std :: initializer_list
vector.cpp: 42: 8: Erreur: « typename » nécessaire avant « std :: initializer_list < _TP> :: iterator
Voici le code:
template<typename T>
Vector<T>& Vector<T>::operator=(std::initializer_list<T> list)
{
if (list.size() > 0)
{
clear();
for(std::initializer_list<T>::iterator iter = list.begin();
iter != list.end(); iter++)
{
push_back(*iter);
}
}
return *this;
}
Amitiés
Bien sûr, étant donné que 'initializer_list' est une fonctionnalité C++ 11, vous devriez aussi pouvoir utiliser une boucle for-range ou au moins déclarer' iter' avec 'auto'. –