std::slice
Материал из cppreference.com
![]() | Эта страница была переведена автоматически с английской версии вики используя Переводчик Google. Перевод может содержать ошибки и странные формулировки. Наведите курсор на текст, чтобы увидеть оригинал. Щёлкните здесь, чтобы увидеть английскую версию этой страницы. (Вы можете помочь в исправлении ошибок и улучшении перевода. Для инструкций перейдите по ссылке.) |
Определено в заголовочном файле <valarray> | ||
class slice; | ||
std::slice
является селектором класса, который определяет подмножество std::valarray похожи на BLAS срез. Объект типа std::slice
содержит три значения: начальный индекс, шага, а общее количество значений в подмножеством. Объекты типа std::slice
можно использовать в качестве индексов с operator[]
valarray автора.Оригинал:
std::slice
is the selector class that identifies a subset of std::valarray similar to BLAS slice. An object of type std::slice
holds three values: the starting index, the stride, and the total number of values in the subset. Objects of type std::slice
can be used as indexes with valarray's operator[]
.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
[править]Функции-члены
создает срез Оригинал: constructs a slice Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. (public функция-элемент) | |
обращается начала среза Оригинал: accesses the start of the slice Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. (public функция-элемент) | |
доступ к размеру кусочек Оригинал: accesses the size of the slice Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. (public функция-элемент) | |
доступ шага среза Оригинал: accesses the stride of the slice Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. (public функция-элемент) |
[править]Пример
Платформы valarray поддерживаемого класса матрицы с проследить расчета функции .
Оригинал:
Barebones valarray-backed Matrix class with a проследить calculating function.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Запустить этот код
#include <iostream>#include <valarray>class Matrix {std::valarray<int> data;int dim;public: Matrix(int r, int c): data(r*c), dim(c){}int& operator()(int r, int c){return data[r*dim + c];}int trace()const{return data[std::slice(0, dim, dim+1)].sum();}};int main(){ Matrix m(3,3);int n =0;for(int r=0; r<3;++r)for(int c=0; c<3;++c) m(r, c)=++n;std::cout<<"Trace of the matrix (1,2,3) (4,5,6) (7,8,9) is "<< m.trace()<<'\n';}
Вывод:
Trace of the matrix (1,2,3) (4,5,6) (7,8,9) is 15
[править]См. также
получает/устанавливает элемент valarray, срез или маску (public функция-элемент) | |
обобщенный фрагмент valarray: начальный индекс, набор длин, набор шагов (класс) | |
прокси для подмножества valarray после применения slice (шаблон класса) |