将向量值推回向量 - for循环 - CPU负载

时间:2018-03-07 19:03:54

标签: c++ for-loop vector

问题似乎是基本的,但我不确定,但重点。 我有三个向量:

std::vector<int> vect1;
std::vector<int> vect2;
std::vector<int> vect3;

例如,vect1有3个成员(10,20和30),而vect2也有3个成员,其他一些值如15,25和35。 我想将vect1的所有值推回vect3,然后将vect2的所有值推回到vect3,因此vect3将按顺序有6个成员: 10,20,30,15,25,35。

我知道我可以用for循环来做到这一点,但我想知道我是否有成千上万的成员喜欢音频处理(例如44100)并且每个成员都会有一些复杂的计算,不会有更多的CPU如果我会做一些简单的步骤,保存?我想象的是:

vect3 = vect1 + vect2;

vect3.push_back ...; // and here in some way all values of vect1 
vect3.push_back ...; // and here in some way all values of vect2

也许这很愚蠢,因为即使有一些像这样的简单函数,我想循环会在std :: vector定义中的某个地方。但出于好奇,我只是想知道。

总之,我总是想知道关于循环的一些基本知识,一些基本循环的每一步消耗了多少时间,例如:

int a=0;
for (int i=1; i<=100; i++)
{
   a = i;
}

所以我可以计算执行整个循环消耗了多少时间。有什么方法可以检查吗? 例如,如果我在循环之外(之前)创建变量,那么其他愚蠢的问题对CPU负载是否重要,如下所示:

int a;
int b;
int c;
for (int i=0; i<100; i++)
{
    a = i * 2;
    b = i * 3;
    c = a + b;
}

或者更好的是那样:

int c;
for (int i=0; i<100; i++)
{
    int a = i * 2;
    int b = i * 3;
    c = a + b;
}

在哪里可以找到这些问题的答案?

0 个答案:

没有答案