<map>
– operátory
operator!=
Testuje, zda objekt mapy na levé straně operátoru není roven objektu mapy na pravé straně.
bool operator!=(
const map <Key, Type, Traits, Allocator>& left,
const map <Key, Type, Traits, Allocator>& right);
Parametry
Vlevo
Objekt typu map
.
Vpravo
Objekt typu map
.
Návratová hodnota
true
pokud mapy nejsou stejné; false
pokud jsou mapy stejné.
Poznámky
Porovnání objektů mapování je založeno na párovém porovnání jejich prvků. Dvě mapy jsou stejné, pokud mají stejný počet prvků a jejich odpovídající prvky mají stejné hodnoty. Jinak jsou nerovné.
Příklad
// map_op_ne.cpp
// compile with: /EHsc
#include <map>
#include <iostream>
int main( )
{
using namespace std;
map <int, int> m1, m2, m3;
int i;
typedef pair <int, int> Int_Pair;
for ( i = 0 ; i < 3 ; i++ )
{
m1.insert ( Int_Pair ( i, i ) );
m2.insert ( Int_Pair ( i, i * i ) );
m3.insert ( Int_Pair ( i, i ) );
}
if ( m1 != m2 )
cout << "The maps m1 and m2 are not equal." << endl;
else
cout << "The maps m1 and m2 are equal." << endl;
if ( m1 != m3 )
cout << "The maps m1 and m3 are not equal." << endl;
else
cout << "The maps m1 and m3 are equal." << endl;
}
The maps m1 and m2 are not equal.
The maps m1 and m3 are equal.
operator<
Testuje, zda objekt mapy na levé straně operátoru je menší než mapový objekt na pravé straně.
bool operator<(
const map <Key, Type, Traits, Allocator>& left,
const map <Key, Type, Traits, Allocator>& right);
Parametry
Vlevo
Objekt typu map
.
Vpravo
Objekt typu map
.
Návratová hodnota
true
je-li mapa na levé straně operátoru přísně menší než mapa na pravé straně operátoru; jinak false
.
Poznámky
Porovnání objektů mapování je založeno na párovém porovnání jejich prvků. Vztah menší než mezi dvěma objekty je založen na porovnání prvního páru nerovných prvků.
Příklad
// map_op_lt.cpp
// compile with: /EHsc
#include <map>
#include <iostream>
int main( )
{
using namespace std;
map<int, int> m1, m2, m3;
int i;
typedef pair<int, int> Int_Pair;
for ( i = 1 ; i < 3 ; i++ )
{
m1.insert ( Int_Pair ( i, i ) );
m2.insert ( Int_Pair ( i, i * i ) );
m3.insert ( Int_Pair ( i, i - 1 ) );
}
if ( m1 < m2 )
cout << "The map m1 is less than the map m2." << endl;
else
cout << "The map m1 is not less than the map m2." << endl;
if ( m1 < m3 )
cout << "The map m1 is less than the map m3." << endl;
else
cout << "The map m1 is not less than the map m3." << endl;
}
The map m1 is less than the map m2.
The map m1 is not less than the map m3.
operator<=
Testuje, zda objekt mapy na levé straně operátoru je menší nebo roven objektu mapy na pravé straně.
bool operator<=(
const map <Key, Type, Traits, Allocator>& left,
const map <Key, Type, Traits, Allocator>& right);
Parametry
Vlevo
Objekt typu map
.
Vpravo
Objekt typu map
.
Návratová hodnota
true
pokud je mapa na levé straně operátoru menší nebo rovna mapě na pravé straně operátoru; jinak false
.
Příklad
// map_op_le.cpp
// compile with: /EHsc
#include <map>
#include <iostream>
int main( )
{
using namespace std;
map <int, int> m1, m2, m3, m4;
int i;
typedef pair <int, int> Int_Pair;
for ( i = 1 ; i < 3 ; i++ )
{
m1.insert ( Int_Pair ( i, i ) );
m2.insert ( Int_Pair ( i, i * i ) );
m3.insert ( Int_Pair ( i, i - 1 ) );
m4.insert ( Int_Pair ( i, i ) );
}
if ( m1 <= m2 )
cout << "The map m1 is less than or equal to the map m2." << endl;
else
cout << "The map m1 is greater than the map m2." << endl;
if ( m1 <= m3 )
cout << "The map m1 is less than or equal to the map m3." << endl;
else
cout << "The map m1 is greater than the map m3." << endl;
if ( m1 <= m4 )
cout << "The map m1 is less than or equal to the map m4." << endl;
else
cout << "The map m1 is greater than the map m4." << endl;
}
The map m1 is less than or equal to the map m2.
The map m1 is greater than the map m3.
The map m1 is less than or equal to the map m4.
operator==
Testuje, zda je objekt mapy na levé straně operátoru roven objektu mapy na pravé straně.
bool operator==(
const map <Key, Type, Traits, Allocator>& left,
const map <Key, Type, Traits, Allocator>& right);
Parametry
Vlevo
Objekt typu map
.
Vpravo
Objekt typu map
.
Návratová hodnota
true
je-li mapa na levé straně operátoru rovna mapě na pravé straně operátoru; jinak false
.
Poznámky
Porovnání objektů mapování je založeno na párovém porovnání jejich prvků. Dvě mapy jsou stejné, pokud mají stejný počet prvků a jejich odpovídající prvky mají stejné hodnoty. Jinak jsou nerovné.
Příklad
// map_op_eq.cpp
// compile with: /EHsc
#include <map>
#include <iostream>
int main( )
{
using namespace std;
map < int, int > m1, m2, m3;
int i;
typedef pair < int, int > Int_Pair;
for ( i = 0 ; i < 3 ; i++ )
{
m1.insert ( Int_Pair ( i, i ) );
m2.insert ( Int_Pair ( i, i * i ) );
m3.insert ( Int_Pair ( i, i ) );
}
if ( m1 == m2 )
cout << "The maps m1 and m2 are equal." << endl;
else
cout << "The maps m1 and m2 are not equal." << endl;
if ( m1 == m3 )
cout << "The maps m1 and m3 are equal." << endl;
else
cout << "The maps m1 and m3 are not equal." << endl;
}
The maps m1 and m2 are not equal.
The maps m1 and m3 are equal.
operator>
Testuje, zda je objekt mapy na levé straně operátoru větší než objekt mapy na pravé straně.
bool operator>(
const map <Key, Type, Traits, Allocator>& left,
const map <Key, Type, Traits, Allocator>& right);
Parametry
Vlevo
Objekt typu map
.
Vpravo
Objekt typu map
.
Návratová hodnota
true
je-li mapa na levé straně operátoru větší než mapa na pravé straně operátoru; jinak false
.
Poznámky
Porovnání objektů mapování je založeno na párovém porovnání jejich prvků. Vztah větší než mezi dvěma objekty je založen na porovnání prvního páru nerovných prvků.
Příklad
// map_op_gt.cpp
// compile with: /EHsc
#include <map>
#include <iostream>
int main( )
{
using namespace std;
map < int, int > m1, m2, m3;
int i;
typedef pair < int, int > Int_Pair;
for ( i = 0 ; i < 3 ; i++ )
{
m1.insert ( Int_Pair ( i, i ) );
m2.insert ( Int_Pair ( i, i * i ) );
m3.insert ( Int_Pair ( i, i - 1 ) );
}
if ( m1 > m2 )
cout << "The map m1 is greater than the map m2." << endl;
else
cout << "The map m1 is not greater than the map m2." << endl;
if ( m1 > m3 )
cout << "The map m1 is greater than the map m3." << endl;
else
cout << "The map m1 is not greater than the map m3." << endl;
}
/* Output:
The map m1 is not greater than the map m2.
The map m1 is greater than the map m3.
*/
operator>=
Testuje, zda je objekt mapy na levé straně operátoru větší nebo roven objektu mapy na pravé straně.
bool operator>=(
const map <Key, Type, Traits, Allocator>& left,
const map <Key, Type, Traits, Allocator>& right);
Parametry
Vlevo
Objekt typu map
.
Vpravo
Objekt typu map
.
Návratová hodnota
true
je-li mapa na levé straně operátoru větší nebo rovna mapě na pravé straně seznamu; jinak false
.
Příklad
// map_op_ge.cpp
// compile with: /EHsc
#include <map>
#include <iostream>
int main( )
{
using namespace std;
map < int, int > m1, m2, m3, m4;
int i;
typedef pair < int, int > Int_Pair;
for ( i = 1 ; i < 3 ; i++ )
{
m1.insert ( Int_Pair ( i, i ) );
m2.insert ( Int_Pair ( i, i * i ) );
m3.insert ( Int_Pair ( i, i - 1 ) );
m4.insert ( Int_Pair ( i, i ) );
}
if ( m1 >= m2 )
cout << "Map m1 is greater than or equal to map m2." << endl;
else
cout << "The map m1 is less than the map m2." << endl;
if ( m1 >= m3 )
cout << "Map m1 is greater than or equal to map m3." << endl;
else
cout << "The map m1 is less than the map m3." << endl;
if ( m1 >= m4 )
cout << "Map m1 is greater than or equal to map m4." << endl;
else
cout << "The map m1 is less than the map m4." << endl;
}
The map m1 is less than the map m2.
Map m1 is greater than or equal to map m3.
Map m1 is greater than or equal to map m4.
operator!= (multimap)
Testuje, zda objekt multimap na levé straně operátoru není roven objektu multimap na pravé straně.
bool operator!=(
const multimap <Key, Type, Traits, Allocator>& left,
const multimap <Key, Type, Traits, Allocator>& right);
Parametry
Vlevo
Objekt typu multimap
.
Vpravo
Objekt typu multimap
.
Návratová hodnota
true
pokud vícemap nejsou rovny; false
pokud jsou vícemap stejné.
Poznámky
Porovnání vícemap objektů je založeno na párovém porovnání jejich prvků. Dva multimapy jsou stejné, pokud mají stejný počet prvků a jejich odpovídající prvky mají stejné hodnoty. Jinak jsou nerovné.
Příklad
// multimap_op_ne.cpp
// compile with: /EHsc
#include <map>
#include <iostream>
int main( )
{
using namespace std;
multimap <int, int> m1, m2, m3;
int i;
typedef pair <int, int> Int_Pair;
for ( i = 0 ; i < 3 ; i++ )
{
m1.insert ( Int_Pair ( i, i ) );
m2.insert ( Int_Pair ( i, i * i ) );
m3.insert ( Int_Pair ( i, i ) );
}
if ( m1 != m2 )
cout << "The multimaps m1 and m2 are not equal." << endl;
else
cout << "The multimaps m1 and m2 are equal." << endl;
if ( m1 != m3 )
cout << "The multimaps m1 and m3 are not equal." << endl;
else
cout << "The multimaps m1 and m3 are equal." << endl;
}
The multimaps m1 and m2 are not equal.
The multimaps m1 and m3 are equal.
operator<
(multimap)
Testuje, zda objekt multimap na levé straně operátoru je menší než objekt multimap na pravé straně.
bool operator<(
const multimap <Key, Type, Traits, Allocator>& left,
const multimap <Key, Type, Traits, Allocator>& right);
Parametry
Vlevo
Objekt typu multimap
.
Vpravo
Objekt typu multimap
.
Návratová hodnota
true
je-li vícemap na levé straně operátoru přísně menší než multimapa na pravé straně operátoru; jinak false
.
Poznámky
Porovnání vícemap objektů je založeno na párovém porovnání jejich prvků. Vztah menší než mezi dvěma objekty je založen na porovnání prvního páru nerovných prvků.
Příklad
// multimap_op_lt.cpp
// compile with: /EHsc
#include <map>
#include <iostream>
int main( )
{
using namespace std;
multimap < int, int > m1, m2, m3;
int i;
typedef pair < int, int > Int_Pair;
for ( i = 1 ; i < 3 ; i++ )
{
m1.insert ( Int_Pair ( i, i ) );
m2.insert ( Int_Pair ( i, i * i ) );
m3.insert ( Int_Pair ( i, i - 1 ) );
}
if ( m1 < m2 )
cout << "The multimap m1 is less than the multimap m2." << endl;
else
cout << "The multimap m1 is not less than the multimap m2." << endl;
if ( m1 < m3 )
cout << "The multimap m1 is less than the multimap m3." << endl;
else
cout << "The multimap m1 is not less than the multimap m3." << endl;
}
The multimap m1 is less than the multimap m2.
The multimap m1 is not less than the multimap m3.
operator<=
(multimap)
Testuje, zda objekt multimap na levé straně operátoru je menší nebo roven objektu multimap na pravé straně.
bool operator<=(
const multimap <Key, Type, Traits, Allocator>& left,
const multimap <Key, Type, Traits, Allocator>& right);
Parametry
Vlevo
Objekt typu multimap
.
Vpravo
Objekt typu multimap
.
Návratová hodnota
true
pokud je multimapa na levé straně operátoru menší nebo rovna vícemap na pravé straně operátoru; jinak false
.
Příklad
// multimap_op_le.cpp
// compile with: /EHsc
#include <map>
#include <iostream>
int main( )
{
using namespace std;
multimap <int, int> m1, m2, m3, m4;
int i;
typedef pair <int, int> Int_Pair;
for ( i = 1 ; i < 3 ; i++ )
{
m1.insert ( Int_Pair ( i, i ) );
m2.insert ( Int_Pair ( i, i * i ) );
m3.insert ( Int_Pair ( i, i - 1 ) );
m4.insert ( Int_Pair ( i, i ) );
}
if ( m1 <= m2 )
cout << "m1 is less than or equal to m2" << endl;
else
cout << "m1 is greater than m2" << endl;
if ( m1 <= m3 )
cout << "m1 is less than or equal to m3" << endl;
else
cout << "m1 is greater than m3" << endl;
if ( m1 <= m4 )
cout << "m1 is less than or equal to m4" << endl;
else
cout << "m1 is greater than m4" << endl;
}
m1 is less than or equal to m2
m1 is greater than m3
m1 is less than or equal to m4
operator== (multimap)
Testuje, zda objekt multimap na levé straně operátoru je roven objektu multimap na pravé straně.
bool operator==(
const multimap <Key, Type, Traits, Allocator>& left,
const multimap <Key, Type, Traits, Allocator>& right);
Parametry
Vlevo
Objekt typu multimap
.
Vpravo
Objekt typu multimap
.
Návratová hodnota
true
pokud je multimapa na levé straně operátoru rovna vícemap na pravé straně operátoru; jinak false
.
Poznámky
Porovnání vícemap objektů je založeno na párovém porovnání jejich prvků. Dva multimapy jsou stejné, pokud mají stejný počet prvků a jejich odpovídající prvky mají stejné hodnoty. Jinak jsou nerovné.
Příklad
// multimap_op_eq.cpp
// compile with: /EHsc
#include <map>
#include <iostream>
int main( )
{
using namespace std;
multimap<int, int> m1, m2, m3;
int i;
typedef pair<int, int> Int_Pair;
for (i = 0; i < 3; i++)
{
m1.insert(Int_Pair(i, i));
m2.insert(Int_Pair(i, i*i));
m3.insert(Int_Pair(i, i));
}
if ( m1 == m2 )
cout << "m1 and m2 are equal" << endl;
else
cout << "m1 and m2 are not equal" << endl;
if ( m1 == m3 )
cout << "m1 and m3 are equal" << endl;
else
cout << "m1 and m3 are not equal" << endl;
}
m1 and m2 are not equal
m1 and m3 are equal
operator>
(multimap)
Testuje, zda objekt multimap na levé straně operátoru je větší než objekt multimap na pravé straně.
bool operator>(
const multimap <Key, Type, Traits, Allocator>& left,
const multimap <Key, Type, Traits, Allocator>& right);
Parametry
Vlevo
Objekt typu multimap
.
Vpravo
Objekt typu multimap
.
Návratová hodnota
true
je-li vícemap na levé straně operátoru větší než vícemap na pravé straně operátoru; jinak false
.
Poznámky
Porovnání vícemap objektů je založeno na párovém porovnání jejich prvků. Vztah větší než mezi dvěma objekty je založen na porovnání prvního páru nerovných prvků.
Příklad
// multimap_op_gt.cpp
// compile with: /EHsc
#include <map>
#include <iostream>
int main( )
{
using namespace std;
multimap < int, int > m1, m2, m3;
int i;
typedef pair < int, int > Int_Pair;
for ( i = 0 ; i < 3 ; i++ )
{
m1.insert ( Int_Pair ( i, i ) );
m2.insert ( Int_Pair ( i, i * i ) );
m3.insert ( Int_Pair ( i, i - 1 ) );
}
if ( m1 > m2 )
cout << "The multimap m1 is greater than the multimap m2." << endl;
else
cout << "Multimap m1 is not greater than multimap m2." << endl;
if ( m1 > m3 )
cout << "The multimap m1 is greater than the multimap m3." << endl;
else
cout << "The multimap m1 is not greater than the multimap m3." << endl;
}
Multimap m1 is not greater than multimap m2.
The multimap m1 is greater than the multimap m3.
operator>=
(multimap)
Testuje, zda objekt multimap na levé straně operátoru je větší nebo roven objektu multimap na pravé straně.
bool operator>=(
const multimap <Key, Type, Traits, Allocator>& left,
const multimap <Key, Type, Traits, Allocator>& right);
Parametry
Vlevo
Objekt typu multimap
.
Vpravo
Objekt typu multimap
.
Návratová hodnota
true
pokud je multimapa na levé straně operátoru větší nebo rovna vícemap na pravé straně seznamu; jinak false
.
Příklad
// multimap_op_ge.cpp
// compile with: /EHsc
#include <map>
#include <iostream>
int main( )
{
using namespace std;
multimap < int, int > m1, m2, m3, m4;
int i;
typedef pair < int, int > Int_Pair;
for ( i = 1 ; i < 3 ; i++ )
{
m1.insert ( Int_Pair ( i, i ) );
m2.insert ( Int_Pair ( i, i * i ) );
m3.insert ( Int_Pair ( i, i - 1 ) );
m4.insert ( Int_Pair ( i, i ) );
}
if ( m1 >= m2 )
cout << "The multimap m1 is greater than or equal to the multimap m2." << endl;
else
cout << "The multimap m1 is less than the multimap m2." << endl;
if ( m1 >= m3 )
cout << "The multimap m1 is greater than or equal to the multimap m3." << endl;
else
cout << "The multimap m1 is less than the multimap m3." << endl;
if ( m1 >= m4 )
cout << "The multimap m1 is greater than or equal to the multimap m4." << endl;
else
cout << "The multimap m1 is less than the multimap m4." << endl;
}
The multimap m1 is less than the multimap m2.
The multimap m1 is greater than or equal to the multimap m3.
The multimap m1 is greater than or equal to the multimap m4.