In this small tutorial, we will learn how to use the Mutable Container (an efficient associative container) of the tulip API that enables :
A tradeoff between speed and memory.
To manage fragmented index
The direct access in this container is forbidden, but it exist a getter and a setter :
const ReturnType<TYPE
>::ConstValue MutableContainer<type>::get(const unsigned int i) const
that returns a reference instead of a copy in order to minimize the number copy of objects, user must be aware that calling the set function can devalidate this reference
void MutableContainer<type>::set( const unsigned int i,const TYPE value).
The MutableContainer has two more methods :
void setAll (const TYPE value)
IteratorValue* findAll(const TYPE &value, bool equal = true) const
Following is a small example of its use :
//declaration of a new MutableContainer MutableContainer<int> t; //set all element to 0 t.setAll(0); //except element of index 1 set to 1. t.set(1,1); //display on standard output cout << t.get(1) << "and" << t.get(2) << endl;