Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die <array>
Kopfzeile enthält zwei Nicht-Member-Funktionen get
und swap
, die auf Arrayobjekten arbeiten.
get
Gibt einen Verweis auf das angegebene Element des Arrays zurück.
template <int Index, class T, size_t N>
constexpr T& get(array<T, N>& arr) noexcept;
template <int Index, class T, size_t N>
constexpr const T& get(const array<T, N>& arr) noexcept;
template <int Index, class T, size_t N>
constexpr T&& get(array<T, N>&& arr) noexcept;
Parameter
Index
Der Offset des Elements.
T
Der Typ eines Elements.
N
Die Anzahl der -Elemente im Array.
arr
Das Array, aus dem die Auswahl erfolgt.
Beispiel
#include <array>
#include <iostream>
using namespace std;
typedef array<int, 4> MyArray;
int main()
{
MyArray c0 { 0, 1, 2, 3 };
// display contents " 0 1 2 3"
for (const auto& e : c0)
{
cout << " " << e;
}
cout << endl;
// display odd elements " 1 3"
cout << " " << get<1>(c0);
cout << " " << get<3>(c0) << endl;
}
0 1 2 3
1 3
swap
Eine Spezialisierung von Nicht-Member-Vorlagen, bei der std::swap
zwei Arrayobjekte ausgetauscht werden.
template <class Ty, std::size_t N>
void swap(array<Ty, N>& left, array<Ty, N>& right);
Parameter
Ty
Der Typ eines Elements.
N
Die Größe des Arrays.
left
Das erste auszutauschende Array.
right
Das zweite auszutauschende Array.
Hinweise
Die Vorlagenfunktion führt left.swap(right)
aus.
Beispiel
// std__array__swap.cpp
// compile with: /EHsc
#include <array>
#include <iostream>
typedef std::array<int, 4> Myarray;
int main()
{
Myarray c0 = { 0, 1, 2, 3 };
// display contents " 0 1 2 3"
for (Myarray::const_iterator it = c0.begin();
it != c0.end(); ++it)
std::cout << " " << *it;
std::cout << std::endl;
Myarray c1 = { 4, 5, 6, 7 };
c0.swap(c1);
// display swapped contents " 4 5 6 7"
for (Myarray::const_iterator it = c0.begin();
it != c0.end(); ++it)
std::cout << " " << *it;
std::cout << std::endl;
swap(c0, c1);
// display swapped contents " 0 1 2 3"
for (Myarray::const_iterator it = c0.begin();
it != c0.end(); ++it)
std::cout << " " << *it;
std::cout << std::endl;
return (0);
}
0 1 2 3
4 5 6 7
0 1 2 3