Notes from C++ Primer
Initialization
When copy a container to another, the container type and element type must be match at the same time:
vector<int> ivec; vector<int> ivec2(ivec); // ok: ivec is vector<int> list<int> ilist(ivec); // error: ivec is not ilist<int> vector<double> dvec(ivec); // error: ivec holds int not double
Use iterator to intialize container:
// initialize slist with copy of each element of svec list<string> slist(svec.begin(), svec.end()); // find midpoint in the vector vector<string>::iterator mid = svec.begin() + svec.size() / 2; // initialize front with first half of svec: the elements up to but not including *mid deque<string> front(svec.begin(), mid); // initialize front with second half of svec: the elements *mid through end of svec deque<string> back(mid, svec.end());
时间: 2024-10-16 18:16:18