Тема22Основныеконтейнерыvectorиdeque:基本的主题矢量和deque22的容器
2.2. vector deque, 271 , Vector Deque , :, . , . , , . , . , : - ; - ; - .,Vector 1, , , , / . , , . , .,Vector 2,#include using namespace std; int main(int argc, char* argv) vector v1; / int vector v2; / double vector v3; / bool vector v4; / string return EXIT_SUCCESS; vector matrix; / ,Vector 3 ,Vector 4 ,#include using namespace std; int main(int argc, char* argv) vector v1; / initially empty vector v2(5); / 5 elements, initialized to 0 vector v3(10, 1); / 10 elements, initialized to 1 vector v4(v3); / v4 is a copy of v3 return EXIT_SUCCESS; ,(constructor) (public member function) (destructor) (public member function) operator= (public member function) : begin (public member type) end (public member function) rbegin (public member function) rend (public member function); : size (public member function) max_size (public member function) resize (public member function) capacity (public member function) empty , (public member function) reserve (public member function),Vector 5, : operator (public member function) at (public member function) front (public member function) back (public member function) : assign (public member function) push_back (public member function) pop_back (public member function) insert (public member function) erase (public member function) swap (public member function) clear (public member function) : get_allocator (public member function),Vector 6,/ vector v; / for (int i = 0; i v(12); v1 = 3; v.at(2) = 90; v.front() = v.back();,Vector 7 ,/ vector:iterator it; for (it = v.begin(); it != v.end(); it+) cout :iterator it = v.end() - 6; v.erase(it, v.end(); cout << v.size() << endl;,Vector 8 ,Deque double-ended queue. - . , . , , . .,Deque 1, , . : ; ; . , , .,Deque 2,Deque 3 ,deque(); / deque deque( size_type size ); / deque size deque( size_type num, const TYPE / start end deque (start) (end).,assign Syntax: void assign( input_iterator start, input_iterator end); void assign( Size num, const TYPE .,Deque 4,insert Syntax: iterator insert( iterator pos, size_type num, const TYPE double.,Deque 5,/ 1 deque dq( 10, 1 ); / :iterator iter; / dq.push_back (8); / dq.push_front (9); / dq.pop_front (); / for( iter = dq.begin(); iter != dq.end(); iter+ ) cout << *iter << endl; / dq.clear();,Deque 6 ,Vector Deque , : 1) deque . 2) : (!) vector . 2 ( Visual C+ 6.0). . , . , n*K , K , , (1+sqrt(5)/2. n, , n . , , . - . deque . . , vector .,Vector vs Deque: ,1. deque insert() and erase() 0 (1) , . capacity(), back(), clear(), destroy(), value(), pop_back(). 2.deque , vector. , vector deque -capacity() and reserve(). 3. - deque vectora push_back() 4. reserve() . deque vector 9874 1755.85. :,Vector vs Deque, - deque. deque . , - vector vector:at() . - ., : deque vector?,1. . - +, 4- . 2. +, . 3. 4. . 5. Mark Allen Weiss “Data Structures and Problem Solving Using C+”. 6. , :,