Files
2025-10-25 03:02:53 +03:00

42 lines
1.6 KiB
Markdown

[class.slice.overview]
# 29 Numerics library [[numerics]](./#numerics)
## 29.6 Numeric arrays [[numarray]](numarray#class.slice.overview)
### 29.6.4 Class slice [[class.slice]](class.slice#overview)
#### 29.6.4.1 Overview [class.slice.overview]
[🔗](#lib:slice)
namespace std {class slice {public: slice();
slice(size_t, size_t, size_t);
slice(const slice&);
size_t start() const;
size_t size() const;
size_t stride() const; friend bool operator==(const slice& x, const slice& y); };}
[1](#1)
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/numerics.tex#L8393)
The slice class represents a BLAS-like slice from an array[.](#1.sentence-1)
Such a slice is specified by a starting index, a length, and a
stride[.](#1.sentence-2)[252](#footnote-252 "BLAS stands for Basic Linear Algebra Subprograms. C++ programs can instantiate this class. See, for example, Dongarra, Du Croz, Duff, and Hammerling: A set of Level 3 Basic Linear Algebra Subprograms; Technical Report MCS-P1-0888, Argonne National Laboratory (USA), Mathematics and Computer Science Division, August, 1988.")
[252)](#footnote-252)[252)](#footnoteref-252)
BLAS stands for*Basic Linear Algebra Subprograms*[.](#footnote-252.sentence-1)
C++ programs can instantiate this class[.](#footnote-252.sentence-2)
See, for example,
Dongarra, Du Croz, Duff, and Hammerling:*A set of Level 3 Basic Linear Algebra Subprograms*;
Technical Report MCS-P1-0888,
Argonne National Laboratory (USA),
Mathematics and Computer Science Division,
August, 1988[.](#footnote-252.sentence-3)