Метод last
Метод last класса span возвращает новый span,
который ссылается на последние N элементов исходного
span. Сама исходная последовательность при этом не изменяется.
В единственный параметр мы передаем количество элементов, которые
должны войти в результирующий подspan.
Если запрошенное количество элементов превышает размер исходного
span, поведение метода не определено. Метод доступен только для
span с динамической длиной (dynamic_extent).
Синтаксис
span.last(count)
Пример
Давайте получим подspan из последних 3 элементов
исходного span:
#include <iostream>
#include <span>
using namespace std;
int main()
{
int arr[] = {1, 2, 3, 4, 5};
span<int> sp(arr);
span<int> res = sp.last(3);
for (int x : res) {
cout << x << " ";
}
return 0;
}
Результат выполнения кода:
3 4 5
Пример
Давайте получим подspan из последних 2 символов
строкового массива:
#include <iostream>
#include <span>
using namespace std;
int main()
{
const char* arr[] = {"a", "b", "c", "d", "e"};
span<const char*> sp(arr);
span<const char*> res = sp.last(2);
for (const char* x : res) {
cout << x << " ";
}
return 0;
}
Результат выполнения кода:
"d e"