How do I use std::span for numeric arrays in C++?

std::span is a C++20 feature that provides a lightweight view over a contiguous sequence of objects. It is particularly useful for numeric arrays, allowing you to create a view over part of an array without copying or modifying it. This can improve performance and safety in your code.

Here’s an example of how to use std::span with numeric arrays:

#include #include void printArray(std::span arr) { for (int x : arr) { std::cout << x << " "; } std::cout << std::endl; } int main() { int numbers[] = {1, 2, 3, 4, 5}; // Create a span over the entire array std::span fullSpan(numbers); printArray(fullSpan); // Create a span over part of the array std::span partialSpan(numbers + 1, 3); // View {2, 3, 4} printArray(partialSpan); return 0; }

std::span C++20 numeric arrays performance lightweight view