在C ++中将数组的值分配给另一个数组的索引

时间:2019-10-13 09:07:41

标签: c++ matlab c++11 c++14

嗨,我在Matlab中看到过,当您有两个如下所示的数组时,可以将数组1的值分配给数组2的索引值。

A= [11,12,13];
B=[1,2,3,2,1,3,1,2,3,1];
C=A(B);
C:11,12,13,12,11,13,11,12,13,11

如何在c ++中执行此操作(例如,使用两个c ++向量) 最好的问候

1 个答案:

答案 0 :(得分:3)

使用向量,您可以执行类似的操作

std::vector<int> A = {11,12,13};
std::vector<int> B ={1,2,3,2,1,3,1,2,3,1};
std::vector<int> C;


for(auto index:B)
  C.push_back(A[index-1]);  //In the first iteration A[index-1] would be A[1-1] so A[0] i.e 11 will be pushed and so on

但是,没有任何内置方法可以做到这一点。