【发布时间】:2016-02-05 06:35:02
【问题描述】:
下面的类哪个构造函数更好?
struct Foo
{
Foo(const int& val):val_(val){} // constructor 1
Foo(int val):val_(val){} // constructor 2
int val_;
};
在没有任何编译器优化的情况下,它们是只复制一次 val 还是构造函数 2 在初始化列表之前创建一个进一步的副本?
【问题讨论】:
标签: c++ constructor pass-by-value pass-by-const-reference