[C++应用程序性能优化]列表初始化和构造函数内初始化

来源:互联网 发布:钢琴谱制作软件 编辑:程序博客网 时间:2024/06/05 18:03
#include <iostream>#include <Windows.h>class Val{public: Val(double v = 1.0) {  for (int i = 0; i < 1000; i++)  {   d[i] = v + i;  } } void Init(double v = 1.0) {  for (int i = 0; i < 1000; i++)  {   d[i] = v + i;  } }protected:private: double d[1000];};class Object{public: // Object(double d) : v(d) {}  // 344ms /*Object(double d)  // 687ms {  v.Init(d); }*/protected:private: Val v;};int main(){ using namespace std; unsigned long i, ncount; ncount = GetTickCount(); for (i = 0; i < 100000; i++) {  Object obj(5.0); } ncount = GetTickCount() - ncount; cout << ncount << "ms" << endl; system("pause"); return 0;}