为什么在命令行中更快地运行可执行文件?

时间:2019-07-18 02:55:19

标签: c++ command-line compilation g++

我用C ++编写了一个简短的程序,该程序基本上是一种通过for循环通过一些数学计算填充双精度数组的方法,目的是进行性能测量和比较。我注意到,如果我通过命令行运行exe文件(只需键入文件名并输入),与通过双击运行它相比,从std::chrono(将方法包装在主方法中)得到的结果要好得多。文件。有谁知道为什么会有这种性能差异?

编辑-这是函数:

    double* MakeCalc()
    {
        double* retval = new double[5000 * 5000];
        int ind = 0;
        for (int i = 0; i < 5000; i++)
        {
            for (int j = 0; j < 5000; j++)
            {
                retval[ind++] = i * j;
            }
        }
        delete[] retval;
        return retval;
    }

main function

    int main()
    {
        auto start = chrono::high_resolution_clock::now();
        MakeCalc();

        auto end = chrono::high_resolution_clock::now();
        auto duration = chrono::duration<float>(end - start);

        std::cout << "execution time: " << duration.count() <<" sec" << '\n';

        system("pause");
        return 0;
    }

0 个答案:

没有答案