优化代码性能

时间:2014-05-03 12:58:48

标签: c++ multithreading optimization

你好我是c ​​++的新手。我试图优化我的代码。我的代码包含两个for循环,在第二个循环中有一个if块。第一个循环将迭代10 ^ 14次,内部循环将迭代10 ^ 4次。我的代码如下:

#include<iostream>
using namespace std;
#include<conio.h>
#include<stdlib.h>
#include<time.h>
#include<dos.h>
#include<stdio.h>
#include<fstream>
using namespace std;
#include<math.h>
#include<thread>

using namespace std;

signed long long run,i,j;

int main()
{
    run=0;
    for (i=0;i<100000000000000;i++)
    {
        for (j=0;j<10000;j++)
        {
            run=run+1;
        }
    }

    cout<<run<<"\n";        
}
它完成的时间大约是1天。所以我在我的代码中使用线程来使它成为第一个。但它显示包含-std = c ++ 0x。那么包括这个呢? 有没有人愿意帮助我?

2 个答案:

答案 0 :(得分:1)

我将如下优化它,但好的编译器可能会这样做:

#include<iostream>

signed long long run,i,j;

int main()
{
    i = 100000000000000;
    j = 10000;
    run = i * j;

    std::cout << run << '\n';        
}

答案 1 :(得分:0)

-std=c++0x是一个编译选项,它告诉编译器你正在使用C ++ 11标准。

您可能需要查看类似于http://www.cs.cf.ac.uk/Dave/C/node3.html的关于编译的链接。