array
Klasse (C++-Standardbibliothek)
Beschreibt ein Objekt, das eine Sequenz der Länge N
aus Elementen des Typs Ty
steuert. Die Sequenz ist als ein Array von Ty
gespeichert, das im array<Ty, N>
-Objekt enthalten ist.
Syntax
template <class Ty, std::size_t N>
class array;
Parameter
Ty
Der Typ eines Elements.
N
Die Anzahl der Elemente.
Member
Typendefinition | Beschreibung |
---|---|
const_iterator |
Der Typ eines konstanten Iterators für die gesteuerte Sequenz. |
const_pointer |
Der Typ eines konstanten Zeigers auf ein Element. |
const_reference |
Der Typ eines konstanten Verweises auf ein Element. |
const_reverse_iterator |
Der Typ eines konstanten umgekehrten Iterators für die gesteuerte Sequenz. |
difference_type |
Der Typ eines Abstands mit Vorzeichen zwischen zwei Elementen. |
iterator |
Der Typ eines Iterators für die gesteuerte Sequenz. |
pointer |
Der Typ eines Zeigers auf ein Element. |
reference |
Der Typ eines Verweises auf ein Element. |
reverse_iterator |
Der Typ eines umgekehrten Iterators für die gesteuerte Sequenz. |
size_type |
Der Typ eines Abstands ohne Vorzeichen zwischen zwei Elementen. |
value_type |
Der Typ eines Elements. |
Memberfunktion | Beschreibung |
---|---|
array |
Erstellt ein Arrayobjekt. |
assign |
(Veraltet. Verwenden Sie fill .) Ersetzt alle Elemente. |
at |
Greift auf ein Element an einer angegebenen Position zu. |
back |
Greift auf das letzte Element zu. |
begin |
Legt den Anfang der kontrollierten Sequenz fest. |
cbegin |
Gibt einen für wahlfreien Zugriff eingerichteten konstanten Iterator auf das erste Element im Vektor zurück. |
cend |
Gibt einen für wahlfreien Zugriff eingerichteten konstanten Iterator zurück, der unmittelbar hinter das Ende des Vektors zeigt. |
crbegin |
Gibt einen konstanten Iterator zum ersten Element in einem umgekehrten Array zurück. |
crend |
Gibt einen konstanten Iterator auf das Ende eines umgekehrten Arrays zurück. |
data |
Ruft die Adresse des ersten Elements ab. |
empty |
Testet, ob Elemente vorhanden sind. |
end |
Legt das Ende der kontrollierten Sequenz fest. |
fill |
Ersetzt alle Elemente durch einen angegebenen Wert. |
front |
Greift auf das erste Element zu. |
max_size |
Ermittelt die Anzahl von Elementen. |
rbegin |
Legt den Anfang der umgekehrten kontrollierten Sequenz fest. |
rend |
Legt das Ende der umgekehrten kontrollierten Sequenz fest. |
size |
Ermittelt die Anzahl von Elementen. |
swap |
Vertauscht den Inhalt von zwei Containern. |
Operator | Beschreibung |
---|---|
array::operator= |
Ersetzt die kontrollierte Sequenz. |
array::operator[] |
Greift auf ein Element an einer angegebenen Position zu. |
Hinweise
Der Typ hat einen Standardkonstruktor array()
und einen Standardzuweisungsoperator operator=
und erfüllt die Anforderungen für ein aggregate
. Daher können Objekte des Typs array<Ty, N>
über einen Aggregatinitialisierer initialisiert werden. Beispiel:
array<int, 4> ai = { 1, 2, 3 };
erstellt das Objekt ai
, das vier ganzzahlige Werte enthält, initialisiert die ersten drei Elemente mit den Werten 1, 2 und 3 und das vierte Element mit 0.
Anforderungen
Header: <array>
Namespace:std
array::array
Erstellt ein Arrayobjekt.
array();
array(const array& right);
Parameter
right
Einzufügendes Objekt bzw. einzufügender Bereich.
Hinweise
Der Standardkonstruktor array()
bewirkt, dass die kontrollierte Sequenz nicht initialisiert (oder standardmäßig initialisiert) wird. Sie können ihn verwenden, um eine nicht initialisierte kontrollierte Sequenz festzulegen.
Der Kopierkonstruktor array(const array& right)
initialisiert mit der Sequenz (right.begin()
, right.end()
) die kontrollierte Sequenz. Sie verwenden es, um eine anfängliche kontrollierte Sequenz anzugeben, die eine Kopie der Sequenz ist, die vom Arrayobjekt right
gesteuert wird.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
Myarray c1(c0);
// display contents " 0 1 2 3"
for (const auto& it : c1)
{
std::cout << " " << it;
}
std::cout << std::endl;
return (0);
}
0 1 2 3
0 1 2 3
array::assign
Veraltet in C++11, ersetzt durch fill
. Ersetzt alle Elemente.
array::at
Greift auf ein Element an einer angegebenen Position zu.
reference at(size_type off);
constexpr const_reference at(size_type off) const;
Parameter
off
Position des Elements, auf das zugegriffen wird
Hinweise
Die Memberfunktionen geben einen Verweis auf das Element der kontrollierten Sequenz an der Position off
zurück. Wenn diese Position ungültig ist, löst die Funktion ein Objekt der out_of_range
-Klasse aus.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display odd elements " 1 3"
std::cout << " " << c0.at(1);
std::cout << " " << c0.at(3);
std::cout << std::endl;
return (0);
}
array::back
Greift auf das letzte Element zu.
reference back();
constexpr const_reference back() const;
Hinweise
Die Memberfunktionen geben einen Verweis auf das letzte Element der kontrollierten Sequenz zurück, die nicht leer sein darf.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display last element " 3"
std::cout << " " << c0.back();
std::cout << std::endl;
return (0);
}
0 1 2 3
3
array::begin
Legt den Anfang der kontrollierten Sequenz fest.
iterator begin() noexcept;
const_iterator begin() const noexcept;
Hinweise
Die Memberfunktionen geben einen Iterator mit wahlfreiem Zugriff zurück, der auf das erste Element der Sequenz zeigt (bzw. gerade über das Ende einer leeren Sequenz hinaus).
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display first element " 0"
Myarray::iterator it2 = c0.begin();
std::cout << " " << *it2;
std::cout << std::endl;
return (0);
}
0 1 2 3
0
array::cbegin
Gibt einen const
-Iterator zurück, mit dem das erste Element im Bereich behandelt wird.
const_iterator cbegin() const noexcept;
Rückgabewert
Ein const
-Random-Access-Iterator, der auf das erste Element des Bereichs zeigt oder die Position direkt hinter dem Ende eines leeren Bereichs (für einen leeren Bereich gilt cbegin() == cend()
).
Hinweise
Mit dem Rückgabewert von cbegin
, die Elemente im Bereich können nicht geändert werden.
Sie können diese Memberfunktion anstelle der begin()
-Memberfunktion verwenden, um sicherzustellen, dass der Rückgabewert const_iterator
ist. In der Regel wird sie mit dem auto
Stichwort "Typabzug" verwendet, wie im folgenden Beispiel gezeigt. Im folgenden Beispiel ist Container
ein beliebiger änderbarer (Nicht-const
-)Container, der begin()
und cbegin()
unterstützt.
auto i1 = Container.begin();
// i1 is Container<T>::iterator
auto i2 = Container.cbegin();
// i2 is Container<T>::const_iterator
array::cend
Gibt einen const
-Iterator zurück, der den Speicherort adressiert, der dem letzten Element eines Bereichs unmittelbar nachfolgt.
const_iterator cend() const noexcept;
Rückgabewert
Ein Random-Access-Iterator, der auf eine Position unmittelbar nach dem Ende des Bereichs verweist.
Hinweise
cend
wird verwendet, um zu testen, ob ein Iterator das Ende seines Bereichs übergeben hat.
Sie können diese Memberfunktion anstelle der end()
-Memberfunktion verwenden, um sicherzustellen, dass der Rückgabewert const_iterator
ist. In der Regel wird sie mit dem auto
Stichwort "Typabzug" verwendet, wie im folgenden Beispiel gezeigt. Im folgenden Beispiel ist Container
ein beliebiger änderbarer (Nicht-const
-)Container, der end()
und cend()
unterstützt.
auto i1 = Container.end();
// i1 is Container<T>::iterator
auto i2 = Container.cend();
// i2 is Container<T>::const_iterator
Der zurückgegebene cend
Wert sollte nicht abgeleitet werden.
array::const_iterator
Der Typ eines konstanten Iterators für die gesteuerte Sequenz.
typedef implementation-defined const_iterator;
Hinweise
Der Typ beschreibt ein Objekt, das als Iterator für den konstanten zufälligen Zugriff für die kontrollierte Sequenz dienen kann.
Beispiel
#include <array>
#include <iostream>
typedef std::array<int, 4> MyArray;
int main()
{
MyArray c0 = { 0, 1, 2, 3 };
// display contents " 0 1 2 3"
std::cout << "it1:";
for (MyArray::const_iterator it1 = c0.begin();
it1 != c0.end();
++it1) {
std::cout << " " << *it1;
}
std::cout << std::endl;
// display first element " 0"
MyArray::const_iterator it2 = c0.begin();
std::cout << "it2:";
std::cout << " " << *it2;
std::cout << std::endl;
return (0);
}
it1: 0 1 2 3
it2: 0
array::const_pointer
Der Typ eines konstanten Zeigers auf ein Element.
typedef const Ty *const_pointer;
Hinweise
Der Typ beschreibt ein Objekt, das als konstanter Zeiger auf Elemente der Sequenz fungieren kann.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display first element " 0"
Myarray::const_pointer ptr = &*c0.begin();
std::cout << " " << *ptr;
std::cout << std::endl;
return (0);
}
0 1 2 3
0
array::const_reference
Der Typ eines konstanten Verweises auf ein Element.
typedef const Ty& const_reference;
Hinweise
Der Typ beschreibt ein Objekt, das als Konstantenverweis für ein Element der gesteuerten Sequenz fungieren kann.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display first element " 0"
Myarray::const_reference ref = *c0.begin();
std::cout << " " << ref;
std::cout << std::endl;
return (0);
}
0 1 2 3
0
array::const_reverse_iterator
Der Typ eines konstanten umgekehrten Iterators für die gesteuerte Sequenz.
typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
Hinweise
Der Typ beschreibt ein Objekt, das als konstanter umgekehrter Iterator für die kontrollierte Sequenz fungieren kann.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display last element " 3"
Myarray::const_reverse_iterator it2 = c0.rbegin();
std::cout << " " << *it2;
std::cout << std::endl;
return (0);
}
0 1 2 3
3
array::crbegin
Gibt einen konstanten Iterator zum ersten Element in einem umgekehrten Array zurück.
const_reverse_iterator crbegin() const;
Rückgabewert
Ein konstanter umgekehrter wahlfreier Zugriffsiterator, mit dem das erste Element in einem umgekehrten Array adressiert wird (bzw. mit dem das ehemals letzte Element im nicht umgekehrten Array adressiert wird).
Hinweise
Mit dem Rückgabewert des crbegin
Arrayobjekts kann das Arrayobjekt nicht geändert werden.
Beispiel
#include <array>
#include <iostream>
int main( )
{
using namespace std;
array<int, 2> v1 = {1, 2};
array<int, 2>::iterator v1_Iter;
array<int, 2>::const_reverse_iterator v1_rIter;
v1_Iter = v1.begin( );
cout << "The first element of array is "
<< *v1_Iter << "." << endl;
v1_rIter = v1.crbegin( );
cout << "The first element of the reversed array is "
<< *v1_rIter << "." << endl;
}
The first element of array is 1.
The first element of the reversed array is 2.
array::crend
Gibt einen konstanten Iterator zurück, der den Speicherort adressiert, der dem letzten Element in einem umgekehrten Array nachfolgt.
const_reverse_iterator crend() const noexcept;
Rückgabewert
Ein const_reverse-Iterator mit wahlfreiem Zugriff, der den Standort adressiert, der dem letzten Element in einem umgekehrten Array nachfolgt (der Speicherort, der dem ersten Element im nicht umgekehrten Array vorangegangen war).
Hinweise
crend
wird mit einem umgekehrten Array verwendet, genau wie array::cend
bei einem Array.
Mit dem Rückgabewert ( crend
entsprechend dekrementiert) kann das Arrayobjekt nicht geändert werden.
crend
kann verwendet werden, um zu testen, ob das Ende des Arrays von einem umgekehrten Iterator erreicht wurde.
Der zurückgegebene crend
Wert sollte nicht abgeleitet werden.
Beispiel
#include <array>
#include <iostream>
int main( )
{
using namespace std;
array<int, 2> v1 = {1, 2};
array<int, 2>::const_reverse_iterator v1_rIter;
for ( v1_rIter = v1.rbegin( ) ; v1_rIter != v1.rend( ) ; v1_rIter++ )
cout << *v1_rIter << endl;
}
2
1
array::data
Ruft die Adresse des ersten Elements ab.
Ty *data();
const Ty *data() const;
Hinweise
Die Memberfunktionen geben die Adresse des ersten Elements der kontrollierten Sequenz zurück.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display first element " 0"
Myarray::pointer ptr = c0.data();
std::cout << " " << *ptr;
std::cout << std::endl;
return (0);
}
0 1 2 3
0
array::difference_type
Der Typ eines Abstands mit Vorzeichen zwischen zwei Elementen.
typedef std::ptrdiff_t difference_type;
Hinweise
Der Ganzzahltyp mit Vorzeichen beschreibt ein Objekt, das die Differenz zwischen den Adressen von zwei beliebigen Elementen in der gesteuerten Sequenz darstellen kann. Es ist ein Synonym für den Typ std::ptrdiff_t
.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display distance first-last " -4"
Myarray::difference_type diff = c0.begin() - c0.end();
std::cout << " " << diff;
std::cout << std::endl;
return (0);
}
0 1 2 3
-4
array::empty
Testet, ob keine Elemente vorhanden sind.
constexpr bool empty() const;
Hinweise
Die Memberfunktion gibt nur „true“ zurück, wenn N == 0
gilt.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display whether c0 is empty " false"
std::cout << std::boolalpha << " " << c0.empty();
std::cout << std::endl;
std::array<int, 0> c1;
// display whether c1 is empty " true"
std::cout << std::boolalpha << " " << c1.empty();
std::cout << std::endl;
return (0);
}
0 1 2 3
false
true
array::end
Legt das Ende der kontrollierten Sequenz fest.
reference end();
const_reference end() const;
Hinweise
Die Memberfunktionen geben einen Iterator mit wahlfreiem Zugriff zurück, der direkt hinter das Ende der Sequenz verweist.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display last element " 3"
Myarray::iterator it2 = c0.end();
std::cout << " " << *--it2;
std::cout << std::endl;
return (0);
}
0 1 2 3
3
array::fill
Löscht ein Array und kopiert die angegebenen Elemente in das leere Array.
void fill(const Type& val);
Parameter
val
Der Wert des Elements, das in das Array eingefügt wird.
Hinweise
fill
ersetzt jedes Element des Arrays mit dem angegebenen Wert.
Beispiel
#include <array>
#include <iostream>
int main()
{
using namespace std;
array<int, 2> v1 = { 1, 2 };
cout << "v1 = ";
for (const auto& it : v1)
{
std::cout << " " << it;
}
cout << endl;
v1.fill(3);
cout << "v1 = ";
for (const auto& it : v1)
{
std::cout << " " << it;
}
cout << endl;
}
array::front
Greift auf das erste Element zu.
reference front();
constexpr const_reference front() const;
Hinweise
Die Memberfunktionen geben einen Verweis auf das erste Element der kontrollierten Sequenz zurück, das nicht leer sein darf.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display first element " 0"
std::cout << " " << c0.front();
std::cout << std::endl;
return (0);
}
0 1 2 3
0
array::iterator
Der Typ eines Iterators für die gesteuerte Sequenz.
typedef implementation-defined iterator;
Hinweise
Der Typ beschreibt ein Objekt, das als Iterator für zufälligen Zugriff für die gesteuerte Sequenz fungieren kann.
Beispiel
#include <array>
#include <iostream>
typedef std::array<int, 4> MyArray;
int main()
{
MyArray c0 = { 0, 1, 2, 3 };
// display contents " 0 1 2 3"
std::cout << "it1:";
for (MyArray::iterator it1 = c0.begin();
it1 != c0.end();
++it1) {
std::cout << " " << *it1;
}
std::cout << std::endl;
// display first element " 0"
MyArray::iterator it2 = c0.begin();
std::cout << "it2:";
std::cout << " " << *it2;
std::cout << std::endl;
return (0);
}
it1: 0 1 2 3
it2: 0
array::max_size
Ermittelt die Anzahl von Elementen.
constexpr size_type max_size() const;
Hinweise
Die Memberfunktion gibt N
zurück.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display (maximum) size " 4"
std::cout << " " << c0.max_size();
std::cout << std::endl;
return (0);
}
0 1 2 3
4
array::operator[]
Greift auf ein Element an einer angegebenen Position zu.
reference operator[](size_type off);
constexpr const_reference operator[](size_type off) const;
Parameter
off
Position des Elements, auf das zugegriffen wird
Hinweise
Die Memberfunktionen geben einen Verweis auf das Element der kontrollierten Sequenz an der Position off
zurück. Wenn diese Position ungültig ist, ist das Verhalten nicht definiert.
Es ist auch eine Nicht-Member-Funktion get
verfügbar, um einen Verweis auf ein Element eines Elements array
abzurufen.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display odd elements " 1 3"
std::cout << " " << c0[1];
std::cout << " " << c0[3];
std::cout << std::endl;
return (0);
}
0 1 2 3
1 3
array::operator=
Ersetzt die kontrollierte Sequenz.
array<Value> operator=(array<Value> right);
Parameter
right
Der zu kopierende Container.
Hinweise
Der Memberoperator weist jedem Element von right
einem entsprechenden Element der kontrollierten Sequenz zu und gibt dann *this
zurück. Sie können ihn verwenden, um die kontrollierte Sequenz durch eine Kopie der kontrollierten Sequenz in right
zu ersetzen.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
Myarray c1;
c1 = c0;
// display copied contents " 0 1 2 3"
// display contents " 0 1 2 3"
for (auto it : c1)
{
std::cout << " " << it;
}
std::cout << std::endl;
return (0);
}
0 1 2 3
0 1 2 3
array::pointer
Der Typ eines Zeigers auf ein Element.
typedef Ty *pointer;
Hinweise
Der Typ beschreibt ein Objekt, das als Zeiger auf Elemente der Sequenz fungieren kann.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display first element " 0"
Myarray::pointer ptr = &*c0.begin();
std::cout << " " << *ptr;
std::cout << std::endl;
return (0);
}
0 1 2 3
0
array::rbegin
Legt den Anfang der umgekehrten kontrollierten Sequenz fest.
reverse_iterator rbegin()noexcept;
const_reverse_iterator rbegin() const noexcept;
Hinweise
Die Memberfunktionen geben einen Rückwärtsiterator zurück, der an einen Punkt direkt hinter dem Ende der Sequenz verweist. Also wird damit der Anfang umgekehrten Sequenz angegeben.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display last element " 3"
Myarray::const_reverse_iterator it2 = c0.rbegin();
std::cout << " " << *it2;
std::cout << std::endl;
return (0);
}
0 1 2 3
3
array::reference
Der Typ eines Verweises auf ein Element.
typedef Ty& reference;
Hinweise
Der Typ beschreibt ein Objekt, das als Verweis auf ein Element der gesteuerten Sequenz fungieren kann.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display first element " 0"
Myarray::reference ref = *c0.begin();
std::cout << " " << ref;
std::cout << std::endl;
return (0);
}
0 1 2 3
0
array::rend
Legt das Ende der umgekehrten kontrollierten Sequenz fest.
reverse_iterator rend()noexcept;
const_reverse_iterator rend() const noexcept;
Hinweise
Die Memberfunktionen geben einen umgekehrten Iterator zurück, der auf das erste Element der Sequenz zeigt (bzw. gerade über das Ende einer leeren Sequenz hinaus). Also wird damit das Ende der umgekehrten Sequenz angegeben.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display first element " 0"
Myarray::const_reverse_iterator it2 = c0.rend();
std::cout << " " << *--it2;
std::cout << std::endl;
return (0);
}
0 1 2 3
0
array::reverse_iterator
Der Typ eines umgekehrten Iterators für die gesteuerte Sequenz.
typedef std::reverse_iterator<iterator> reverse_iterator;
Hinweise
Beschreibt ein Objekt, das als umgekehrter Iterator für die gesteuerte Sequenz fungieren kann.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display last element " 3"
Myarray::reverse_iterator it2 = c0.rbegin();
std::cout << " " << *it2;
std::cout << std::endl;
return (0);
}
0 1 2 3
3
array::size
Ermittelt die Anzahl von Elementen.
constexpr size_type size() const;
Hinweise
Die Memberfunktion gibt N
zurück.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display size " 4"
std::cout << " " << c0.size();
std::cout << std::endl;
return (0);
}
0 1 2 3
4
array::size_type
Der Typ eines Abstands ohne Vorzeichen zwischen zwei Elementen.
typedef std::size_t size_type;
Hinweise
Der unsignierte Ganzzahltyp beschreibt ein Objekt, das die Länge jeder kontrollierten Sequenz darstellen kann. Es ist ein Synonym für den Typ std::size_t
.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display distance last-first " 4"
Myarray::size_type diff = c0.end() - c0.begin();
std::cout << " " << diff;
std::cout << std::endl;
return (0);
}
0 1 2 3
4
array::swap
Tauscht den Inhalt dieses Arrays mit dem eines anderen aus.
void swap(array& right);
Parameter
right
Container für den Tausch von Inhalten.
Hinweise
Die Memberfunktion wechselt die gesteuerten Sequenzen zwischen *this
und rechts. Es führt Elementzuweisungen und Konstruktoraufrufe proportional zu N
.
Es ist auch eine Nicht-Member-Funktion swap
verfügbar, um zwei array
Instanzen auszutauschen.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
Myarray c1 = { 4, 5, 6, 7 };
c0.swap(c1);
// display swapped contents " 4 5 6 7"
for (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
swap(c0, c1);
// display swapped contents " 0 1 2 3"
for (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
return (0);
}
0 1 2 3
4 5 6 7
0 1 2 3
array::value_type
Der Typ eines Elements.
typedef Ty value_type;
Hinweise
Der Type stellt ein Synonym für den Vorlagenparameter Ty
dar.
Beispiel
#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 (const auto& it : c0)
{
std::cout << " " << it;
}
std::cout << std::endl;
// display contents " 0 1 2 3"
for (const auto& it : c0)
{
Myarray::value_type val = it;
std::cout << " " << val;
}
std::cout << std::endl;
return (0);
}
0 1 2 3
0 1 2 3