50% found this document useful (2 votes)
1K views

C++ STL Bangla Basic Tutorial

The document provides an overview of the C++ Standard Template Library (STL) and some of its commonly used components. It explains containers like vector, stack, queue and priority queue; iterators; algorithms like sort, reverse, next_permutation; and associative containers like set and map. It demonstrates how to define custom data types and comparison functions for sorting. The STL enables efficient manipulation of data structures in C++ using templates.

Uploaded by

Sadat Hossain
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
50% found this document useful (2 votes)
1K views

C++ STL Bangla Basic Tutorial

The document provides an overview of the C++ Standard Template Library (STL) and some of its commonly used components. It explains containers like vector, stack, queue and priority queue; iterators; algorithms like sort, reverse, next_permutation; and associative containers like set and map. It demonstrates how to define custom data types and comparison functions for sorting. The STL enables efficient manipulation of data structures in C++ using templates.

Uploaded by

Sadat Hossain
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 27

STL

D ,
,

int array[ ;
?
, ,

,
, ,

, ,
, ,

vector< int > array;


int

vector< double > water;

vector< long long > balance;

vector< char > characters;

vector< day > diary;

array.push_back( ;

size() ,
, ,

int main() {
vector< int > v;

v.push_back( ;

v.push_back( ;

v.push_back( ;

v.push_back( ;

for(int i= ; i<v.size(); i++) cout << v[i] << endl;

return ;

th
v[

int main() {

vector< int > v, t;

v.push_back( ;

v.push_back( ;

v.push_back( ;
v.push_back( ;

t = v; // copying

for(int i= ; i<t.size(); i++) cout << t[i] << endl;

return ;

D ,

vector< int > v[ ;

vector< vector< int > > v;

vector< vector< vector< int > > > v; // dimensional


, vector<vector<int>> v; >>

int main() {

string a, b, c;

a = "this is a string"; // easy assigning

b = a; // copy hoye gelo! :O

c = a + b // c te rakhlam a ar b er concatation

cout << c << endl; // print korlam

printf("%s\n", c.c_str() ); // printf diyei korlam na hoy


cout << c.size() << endl; // length print korlam

for(int i= ; i<c.size(); i++) cout << c[i] ;

ekta ekta kore character print korlam

return ;

vector< string > vs;

?
, ,
,

STL

stack< int > st;

st.push( ; // inserting

st.push( ; // inserting

st.push( ; // inserting

while( !st.empty() ) {

cout << st.top() << endl; // printing the top

st.pop(); // removing that one

}
? ,

queue< int > q;

q.push( ; // inserting

q.push( ; // inserting

q.push( ; // inserting

while( !q.empty() ) {

cout << q.front() << endl; // printing the front

q.pop(); // removing that one

}
, '

priority_queue< int > q;

q.push( ; // inserting

q.push( ; // inserting

q.push( ; // inserting

while( !q.empty() ) {

cout << q.top() << endl; // printing the top

q.pop(); // removing that one

}
,
STL , ,

vector< int > :: iterator i;

vector< double > :: iterator j;

vector< int > v; v.pb( ; v.pb( ; v.pb( ;

vector< int > :: iterator i;


for( i = v.begin(); i < v.end(); i++ ) {

printf("%d\n", *i);

ei khane gola kato!

, ,
,

STL v ,

sort( v.begin(), v.end() );


,
, , , ,
, ,

, ,"
,

struct data {

char name[ ;

int height, weight;

long long income;

};

, ,
,
,
,

bool compare( data a, data b ) {

if( a.income == b.income ) {

if( a.height == b.height ) {

if( a.weight == b.weight )

return strlen( a.name ) < strlen( b.name );

else return a.weight < b.weight;

}else return a.height > b.height;

}else return a.income > b.income;

}
sort( v.begin(), v.end(), compare );

a b

, <

? ,

struct data {

char name[ ;

int height, weight;

long long income;

bool operator < ( const data& b ) const {


if( income == b.income ) {

if( height == b.height ) {

if( weight == b.weight )

return strlen( name ) < strlen( b.name );

else return weight < b.weight;

}else return height > b.height;

}else return income > b.income;

};

b ,
a

sort( v.begin(), v.end() );


, ,
,

data array[ ;

sort( array, array + n );

based)

sort( array+ , array+ ;


A={ , , , , , , , } ,

A={ , , , , }

STL , ,

set< int > s;

s.insert( ; s.insert( ; s.insert( ;

set< int > :: iterator it;

for(it = s.begin(); it != s.end(); it++) {


cout << *it << endl;

, <
,

, ,
,
? ,
? , ,"
?

, ,
,

map< string, int > m;

string goru;

while( cin >> goru ) {

if( goru == "moro" ) break;

m[ goru ] ++;

cout << goru <<" ase " << m[ goru ] << " ta :D " << endl;

, ,
,
<

, ,"
,

char line[ ;

while( gets( line ) ) {

stringstream ss( line ); // initialize kortesi

int num; vector< int > v;

while( ss >> num ) v.push_back( num ); // :P


sort( v.begin(), v.end() );

print routine

ss cin ;)

STL ,

struct pair {

int first, second;

};
, STL
,

pair< int, int > p;

? ? ,
;)

pair< int, int > p;

pair< int, double > x;

pair< double, string > moru;

pair< goru, goru > fau;


,

,
'
STL

vector< int > v;

for(int i= ; i< ; i++) v.push_back( i );

do {

protitat jama prottekke porai dekho shukh maximize hochche kina

}while( next_permutation( v.begin(), v.end() ) );


,
,
,

vector< int > nacho;

reverse( nacho.begin(), nacho.end() );

,
STL।

,
, , ,
,

;)

You might also like