STL :
;
;
.
, .
, . , . . , , . int, .
#include "stdafx.h"
#include <iostream>
#include <vector> //1
using namespace std;
int main(){
vector<int> coll; //2
// 1 6
for (int i = 1; i<= 6; ++i) coll.push_back(i); //3
// ,
for (int i = 0; i<coll.size(); ++i) cout <<coll[i] <<' '; //4
}
vector STL, : #include <vector>. 2 coll vector int. vector (. 1) push_back() , i. , .
4 coll, size() operator[] vector .
: 1 2 3 4 5 6.
, , ( ) 90% , , push_back(), size(), operator[] , vector. , ( STL , ) .
(deque) double-ended queue ( ). , , . , , .
|
|
, 1.1 6.6, .
#include "stdafx.h"
#include <iostream>
#include <deque>
using namespace std;
int main()
{
deque<float> coll;//
// 1.1 6.6
for (int i = 1; i <= 6; ++i) coll.push_front(i*1.1);//
// ,
for (int i = 0; i<coll.size(); ++i) cout << coll[i] <<' ';
}
: #liclude <deque>. deque<float> coll coll . push_front() .
push_front() . : , , . , :
6.6 5.5 4.4 3.3 2.2 1.1
push_back(). push_front() , ( ). STL , ( ). , .
list . , . . , , . , ( ). , , .
. , .
, z , .
#include "stdafx.h"
#include <iostream>
#include <list>
using namespace std;
int main(){
list<char> coll; //
// a' 'z'
for (char c = 'a'; c<= 'z'; ++c) coll.push_back(c);
|
|
while(!coll.empty()) { //
cout<<coll.front()<<' '; //
coll.pop_front(); //
}
}
, <list> list, : list <char> coll. ernpty() . , false, :
front() , pop_front() . , pop_front() , .
. ASCII : a b d f g h i j k l m n s t u v w x z.
, , , - , , [] . , .
STL. C++ (basic_string<>, string wstring). , .
, C++: . STL, size() empty(), STL . :
, STL. C++ . , .
. , , , . <. , .
. () . , . , . , STL.
, . , .
- , , . , .
., /. , , . , . , .
- , , . , . .
|
|
. <. ; , .
, . .
C++ , . . , .
, LIFO ( , );
, FIFO ( , ). , .
, . , ( <). , , . , .
STL. , , , , STL.
, STL ( ). . , .
* . , ->.
++ . , --.
= = != , .
= ( , ).
C++ . , , . , . , . . , . : , , , , .
, . .
|
|
begin() , . ( ).
end() , . .
, begin() end() , , (. 5.3). :
- : , end();
- , begin() end().
. 9.3. begin() end()
. .
#include "stdafx.h"
#include <iostream>
#include <list>
using namespace std;
int main()
{
list<char> coll; //
// a 'z'
for (char = 'a'; <='z'; ++) coll.push_back();
/*
* - .*/
list<char>::const_iterator pos;
for (pos = coll.begin(); pos!= coll.end(); ++pos) cout<<*pos<<' ';
cout<<endl;
}
z, for:
list<char>::const_iterator pos;
for (pos = coll.begin(); pos!= coll.end(); ++pos) cout<<*pos<<' ';
pos . : list<char>::const_iterator pos;
:
::iterator /;
::const_iterator .
, list :
namespace std {
template <class T>
class list {
public:
typedef... iterator;
typedef... const_iterator;
...
}
}
iterator const_iterator .
for pos : pos = coll.begin();
, pos : pos!= coll.end();
pos c . ++pos pos .
pos , , (. 54), , , coli.begin() coil.end().
. 9.4. pos
*pos. , const_iterator, , . , . :
//
list<char>::iterator pos;
for(pos = coll.begin(); pos!= coll.end(); ++pos) *pos = toupper(*pos);
++. , , . - ++pos pos++, :
for (pos = coll.begin(); pos!= coll.end(); pos++) {
// .
//
}
. , , . .