首页 > 其他 > 详细

类的构造及初始化效率对比

时间:2014-06-21 00:16:58      阅读:394      评论:0      收藏:0      [点我收藏+]

基础数据结构: 

    struct A
    {
        int a;
        int b;
        int c;
        int d;
        int e;
        int f;
        int g;
    };

初始化次数:const int MAX_LOOP_NUM = 100000000;

第一种方式: 无初始化

bubuko.com,布布扣
 struct A
    {
        A() 
        {
        }

        int a;
        int b;
        int c;
        int d;
        int e;
        int f;
        int g;
    };
View Code
        for(int index = 0; index < MAX_LOOP_NUM; ++index)
        {
            A a;
        }

运行时间:288ms

第二种方式:无初始化

bubuko.com,布布扣
    struct A
    {
        int a;
        int b;
        int c;
        int d;
        int e;
        int f;
        int g;
    };
View Code
bubuko.com,布布扣
        for(int index = 0; index < MAX_LOOP_NUM; ++index)
        {
            A a;
        }
View Code

运行时间:293ms

第三种方式:

        for(int index = 0; index < MAX_LOOP_NUM; ++index)
        {
            A a = {0};
        }

运行时间:701ms

第四种方式:

        for(int index = 0; index < MAX_LOOP_NUM; ++index)
        {
            A a;
            ::memset(&a, 0, sizeof(a));
        }

运行时间:835ms

第五种方式:

bubuko.com,布布扣
struct B
    {
        B()
        {
            a = 0;
            b = 0;
            c = 0;
            d = 0;
            e = 0;
            f = 0;
            g = 0;
        }

    private:
        int a;
        int b;
        int c;
        int d;
        int e;
        int f;
        int g;
    };
View Code
        for(int index = 0; index < MAX_LOOP_NUM; ++index)
        {
            B b;
        }

运行时间:1790ms

第六种方式:

bubuko.com,布布扣
struct C
    {
        C() : a(0), b(0), c(0), d(0), e(0), f(0), g(0)
        {
        }

    private:
        int a;
        int b;
        int c;
        int d;
        int e;
        int f;
        int g;
    };
View Code
        for(int index = 0; index < MAX_LOOP_NUM; ++index)
        {
            C c;
        }

运行时间:1821

 

 

类的构造及初始化效率对比,布布扣,bubuko.com

类的构造及初始化效率对比

原文:http://www.cnblogs.com/myfav/p/3795574.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!