zoukankan      html  css  js  c++  java
  • C++基于范围的for循环性能测试(针对std::vector)

    1、代码如下:

    void output1(int x)
    {
    if (x == 10000000)
    {
    std::cout << x << std::endl;
    }

    }
    const std::string getCurrentSystemTime()
    {
    auto tt = std::chrono::system_clock::to_time_t
    (std::chrono::system_clock::now());
    struct tm* ptm = localtime(&tt);
    char date[60] = { 0 };
    sprintf(date, "%d-%02d-%02d %02d:%02d:%02d",
    (int)ptm->tm_year + 1900, (int)ptm->tm_mon + 1, (int)ptm->tm_mday,
    (int)ptm->tm_hour, (int)ptm->tm_min, (int)ptm->tm_sec);
    return std::string(date);
    }
    void Test9()
    {
    std::cout << getCurrentSystemTime() << std::endl;
    std::vector<int> coll;
    for (int i = 0; i <= 10000000; i++)
    {
    coll.push_back(i);
    }
    std::cout<<getCurrentSystemTime()<<std::endl;
    std::for_each(coll.begin(), coll.end(), output1);
    std::cout << getCurrentSystemTime() << std::endl;
    for (auto iter : coll)
    {
    if (iter == 10000000)
    {
    std::cout << iter << std::endl;
    }
    }
    std::cout << getCurrentSystemTime() << std::endl;
    for (auto iter = coll.begin(); iter != coll.end(); ++iter)
    {
    if (*iter == 10000000)
    {
    std::cout << *iter << std::endl;
    }
    }
    std::cout << getCurrentSystemTime() << std::endl;

    for (auto iter = coll.begin(); iter != coll.end(); iter++)
    {
    if (*iter == 10000000)
    {
    std::cout << *iter << std::endl;
    }
    }
    std::cout << getCurrentSystemTime() << std::endl;
    }

    2、运行结果如下:

  • 相关阅读:
    java 将动作和名字绑定
    java 切换不同的显示风格
    java 背景颜色更改
    java 图像显示
    java 字符串
    java 2D 绘图
    java jFrame
    java bitset and C++ bitset
    踏得网
    纯CSS画的基本图形(矩形、圆形、三角形、多边形、爱心、八卦等)
  • 原文地址:https://www.cnblogs.com/KunLunSu/p/7967643.html
Copyright © 2011-2022 走看看