//本程序实例主要介绍了slice的正确玩法
#include <iostream>
#include <valarray>
#include <cmath>
using namespace std;
void print(valarray<double> & v){
int size=v.size();
for(int i=0;i<size;++i){
cout<<v[i]<<",";
}
cout<<endl;
}
int main()
{
valarray<double> v1(12);
for(int i=0;i<12;++i){ //v1的初始化
v1[i]=i;
}
print(v1);
valarray<double> tv1=valarray<double>(v1[slice(0,4,2)]); //从0开始,间隔2,选4个作为tv1
print(tv1);
valarray<double> tv2=valarray<double>(v1[slice(2,4,3)]); //从二号位开始,间隔3,选4个
print(tv2);
v1[slice(0,4,3)]=pow(tv1,tv2); //改变v1的值
print(v1);
valarray<double> v2(v1[slice(0,4,3)]); //用v1初始化v2
print(v2);
slice myslice(1,4,2); //从1号位开始,间隔2,选4个
valarray<double> v3=v1[myslice]; //用该slice将v1切片,初始化v3
print(v3);
return 0;
}
C++ STL slice()函数的正确打开方式 带详细注释实例讲解
最新推荐文章于 2024-07-26 16:21:04 发布