В boost::multi_index я пытаюсь вставить значение в определенное место, однако я не нашел ни одного примера, как выполнить эту задачу в документации по повышению https://www.boost.org/doc/libs/1_59_0/libs/multi_index/doc/tutorial/indices.html или в другом месте.
Это код, который позволяет вставлять в начало или конец коллекции.
struct animal {
std::string name;
int legs;
};
typedef multi_index_container<
animal,
indexed_by<
sequenced<>,
ordered_non_unique<member<animal, std::string, &animal::name>>,
ordered_non_unique<member<animal, int, &animal::legs>>,
random_access<>
>
> animal_multi;
int main() {
animal_multi animals;
animals.push_back({"shark", 0});
animals.push_back({"spider", 8});
animals.push_front({"dog", 4});
auto it = animals.begin();
auto end = animals.end();
for (; it != end; ++it)
std::cout << it->name + " ";
return 0;
}
Текущий выход: паук-акула-собака
Как мне настроить код, чтобы передать что-то, например, между акулой и пауком?