Hi, ich will eine Template-Funktion schreiben, welche als Argumente jeweils den begin- und end-Iterator übergeben bekommt sowie den dazugehörigen Typ. Wie der Name der Funktion bereits erahnen lässt, soll diese generisch in Standartcontainer Elemente löschen. Nun benötige ich als dritten Parameter den Typ, auf den der Iterator zeigt. Ich hab bisher noch nicht viel mit template traits gemacht aber ich denke std::iterator_traits ist so etwa das was ich brauche. Leider wird der code nicht compiliert: „../src/helper.h:8:64: error: ‘std::iterator_traits<_Iter>::value_type’ is not a type“. Weis jemand was daran falsch ist. Auch wenn es vielleicht bereits dafür eine Lösung in der std gibt geht es mir hier vor allem ums Prinzip als den Sinn der Funktion

Code:
#pragma once

#include <iterator>

namespace stdmy
{
	template<typename T>
	void deleteByValue(T _begin, T _end, std::iterator_traits<T>::value_type _val)
	{
		//kommt noch
	}
}