Hi, not sure if the OP needs std::vector but... I'd recommend boost::container::vector which has a dedicated constructor [1] and resize() [2] method tagged with default_init_t argument, both of which default initialize the values in the vector. For primitives it basically means it leaves them uninitialized, hence there's no overhead when the vector is to be filled with real data soon. WBR, Adam Romanek
Hi Adam As following your point, the benefit of boost::container::vector supported the "default_init_t" method so that it 's quite convince and safety comparing with std::vector<> is that right ? are there additional advantages ? Hi Ilja You said "Boost::mpi version is always at least 10 times slower. " make me confused, I guess it's should be a typo, isn't ? Martin