is ``: m_var(var)`` faster than ``m_var = var``

  • 本文关键字:var than faster is c++ class
  • 更新时间 :
  • 英文 :


据我所知,有两种方法可以快速设置类

A:

MyClass::MyClass(File& file) :
m_file(file)
{}

B:

MyClass::MyClass(File& file) :
{
m_file = file;
}

是否有性能相关的理由使用其中一个而不是另一个,或者这只是编码标准。

这取决于

在第一种情况下,直接从file构造m_file

在第二种情况下,首先默认构造m_file,然后从file更新,撤消构造函数初始化的任何内容。

因此,根据m_file被声明为什么类型,以及它的默认构造函数做什么或不做什么,可能存在性能差异。

最新更新