std::transform erreur compilation
Bonjour,
J'ai trois vector<double> de taille identique. Je voudrais itérer sur 2 d'entre eux simultanement et placer le résultat de leur soustraction dans le troisième.
Code:
1 2 3 4 5 6 7 8 9
| std::vector<double> first(100, 0);
std::vector<double> second(100, 0);
std::vector<double> result(100, 0);
//remplissage des valeurs dans first et second
std::transform(first.begin(), first.end(), secind.begin(), result.begin(), [](double a, double b) {
return (a - b);
}); |
Eclipse me renvoie les erreurs suivantes
Code:
1 2 3
| trying to instantiate template<class _IIter1, class _IIter2, class _OIter, class _BinaryOperation> _OIter std::transform(_IIter1, _IIter1, _IIter2, _OIter, _BinaryOperation)
no matching function for call to transform(std::vector<double>::iterator, std::vector<double>::iterator, std::vector<double>::iterator, std::vector<double>::iterator, main()::<lambda(double, double)>)
template argument for template<class _IIter1, class _IIter2, class _OIter, class _BinaryOperation> _OIter std::transform(_IIter1, _IIter1, _IIter2, _OIter, _BinaryOperation) uses local type main()::<lambda(double, double)>' |
Any idea?
Merci bien.