Boost logo

Boost Users :

Subject: [Boost-users] [Assign] reservation and insert efficiency
From: John Dlugosz (JDlugosz_at_[hidden])
Date: 2010-07-01 12:27:23

Does the initialization form I showed earlier, e.g.

std::vector<record_type> newvec= list_of().range(RecVec.begin(),db).range(newdata).range(de,RecVec.end());

know to get the total length first, or will it keep re-allocating storage with each underlying insertion? That is, do I get a performance benifit from manually doing:

std::vector<record_type> newvec;
newvec.reserve (... add up the sizes of my three ranges ...)
newvec += range(RecVec.begin(),db).range(newdata).range(de,RecVec.end());

Hmm, I'm sure the last line would be somewhat different.
Anyway, do I need to reserve first, or will it be reasonably smart about that?


(awkward footer alert!)

TradeStation Group, Inc. is a publicly-traded holding company (NASDAQ GS: TRAD) of three operating subsidiaries, TradeStation Securities, Inc. (Member NYSE, FINRA, SIPC and NFA), TradeStation Technologies, Inc., a trading software and subscription company, and TradeStation Europe Limited, a United Kingdom, FSA-authorized introducing brokerage firm. None of these companies provides trading or investment advice, recommendations or endorsements of any kind. The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer.

Boost-users list run by williamkempf at, kalb at, bjorn.karlsson at, gregod at, wekempf at