Insertadores para STL stack y priority_queue
std::vector
, std::list
ystd::deque
tenerstd::back_inserter
ystd::set
tienestd::inserter
.
porstd::stack
ystd::priority_queue
Supongo que el insertador equivalente sería unpush()
pero parece que no puedo encontrar la función correcta para llamar.
Mi intención es poder usar la siguiente función con el iterador de inserción correcto:
#include <string>
#include <queue>
#include <iterator>
template<typename outiter>
void foo(outiter oitr)
{
static const std::string s1 ("abcdefghji");
static const std::string s2 ("1234567890");
*oitr++ = s1;
*oitr++ = s2;
}
int main()
{
std::priority_queue<std::string> spq;
std::stack<std::string> stk;
foo(std::inserter(spq));
foo(std::inserter(stk));
return 0;
}