Ich versuche, die Funktion set_difference aufzurufen und das Ergebnis in eine std :: list zu schreiben. Theoretisch ist es möglich, dies auf jedem sortierten Container zu tun, oder?
%Vor%v gibt jedoch als leere Liste zurück. Liegt es daran, dass ich es nicht für den Listencontainer verwenden kann?
Es liegt daran, dass v.begin()
der Anfang einer leeren Sequenz ist. Die Elemente werden fast überall kopiert. Ersetze es durch std::back_inserter(v)
. Dadurch erhalten Sie einen Iterator, der weiß, wie er in v
einfügen kann.
Sie müssen einen Ausgabe-Iterator angeben, der fügt ein. Verwenden Sie std::inserter
.
Tags und Links c++ stl list set-difference