У меня есть два класса A
и B
, и существует неявный оператор преобразования для перехода от одного к другому, так что:
A a;
B b;
b = a; // Works
Существует ли стандартный способ преобразования std::list<A>
в std::list<B>
? (Или даже от std::vector<A>
до std::list<B>
).
Я знаю, что могу пройтись по списку и построить второй элемент списка за элементом, но мне интересно, есть ли более элегантное решение.
К сожалению Я не могу использовать boost
, но из любопытства в качестве дополнительного вопроса, если повышение может справиться с этим, я был бы рад узнать как.