System::ArraySegment Klasse
Inhalt
[
Ausblenden
]ArraySegment class
Stellt ein Segment des eindimensionalen Arrays dar. Dieser Typ sollte auf dem Stack alloziert und an Funktionen per Wert oder Referenz übergeben werden. Verwenden Sie niemals die Klasse System::SmartPtr, um Objekte dieses Typs zu verwalten.
template<typename T>class ArraySegment : public System::Object
| Parameter | Beschreibung |
|---|---|
| T | Der Typ der Elemente des Arraysegments. |
Methoden
| Methode | Beschreibung |
|---|---|
| ArraySegment(System::ArrayPtr<T>) | |
| ArraySegment(System::ArrayPtr<T>, int32_t, int32_t) | |
| ArraySegment() | |
| Equals(System::SharedPtr<Object>) override | |
| Equals(ArraySegment<T>) | |
| get_Array() | |
| get_Count() | |
| get_Offset() | |
| GetHashCode() const override | Analog zur C#-Methode Object.GetHashCode(). Ermöglicht das Hashen benutzerdefinierter Objekte. |
Hinweise
#include <system/array_segment.h>
#include <system/smart_ptr.h>
using namespace System;
void Print(const SmartPtr<ArraySegment<String>> &segment)
{
for (auto i = segment->get_Offset(); i < segment->get_Offset() + segment->get_Count(); i++)
{
std::cout << segment->get_Array()[i] << ' ';
}
std::cout << std::endl;
}
int main()
{
// Erstelle und fülle das Array.
auto array = System::MakeObject<Array<String>>(3);
array[0] = u"First";
array[1] = u"Second";
array[2] = u"Third";
// Erstelle das Arraysegment, das das gesamte Array enthält.
auto fullArray = MakeObject<ArraySegment<String>>(array);
// Gib die Elemente des Arraysegments aus.
Print(fullArray);
// Erstelle das Arraysegment.
auto segment = MakeObject<ArraySegment<String>>(array, 1, 2);
// Gib die Elemente des Arraysegments aus.
Print(segment);
return 0;
}
/*
This code example produces the following output:
First Second Third
Second Third
*/
Siehe auch
- Class Object
- Namespace System
- Library Aspose.Page for C++