Bonjour,
J'aurais deux petites questions au sujet des méthodes de la classe vector en C++.
1) J'utilise la fonction erase pour supprimer un élément de mon vecteur mais mon compilo me donne l'erreur suivante "Could not find a match for 'vector<Product*, allocator<Product*> >::erase(int)'.
voici le code de ma fonction qui pause problème :
void Basket::DeleteProduct(int indexProduct){
SelectedProducts.erase(indexProduct);
SelectedAmounts.erase(indexProduct);
NumberOfItems = SelectedAmounts.size();
}
Je souhaite tout simple supprimer l'élément qui se trouve à l'index donné dans mes deux vecteurs SelectedProducts et SelectedAmount. En clerc je voudrais supprimer SelectedProducts[indexProduct] et SelectedAmounts[indexProduct].
J'ai pourtant vérifier sur des sites internets et la fonction erase utilise bien l'index de l'élément à supprimer en paramètre.
2) Mon autre question. Est-ce que quelqu'un sait s'il existe un équivalent de la fonction indexOf(ElementRecherché) des vecteurs JAVA en C++. En fait j'ai un vecteur de pointeurs de Produit et j'aimerais une fonction qui me renvoi l'index d'une adresse de produit que je recherche dans mon vecteur.
Un truc du genre
MonVecteurDeProduit.indexOf(&ProduitRecherché)Merci beauoup d'avance.