I need a structure as follows:

The structure must contain a fixed size std::string so that the number of its elements is finit (100 - 10000000).
I would like to be able to access each item randomly as follows:
std::string Temp = MyStrcuture[i];
or
MyStrcuture[i] = std::string Temp;
I have to choose the fastest structure without (possibly) a memory leak.
Which one is best for me?
std::string* MyStrcuture = new std::string[Nu_of_Elements];std::queue< std:string> MyStrcuture(Nu_of_Elements);std::vector< std:string> MyStrcuture(Nu_of_Elements);boost::circular_buffer< std::string> MyStrcuture(Nu_of_Elements);- Your suggestion?
source share