众所周知,Qt 类使用 copy-on-wite按值传递时。因此,直到需要时才进行复制。当只需要对对象进行只读访问时,我已经看到很多次通过 const 引用传递 Qt 类。为什么人们传递 const QString&
而不是简单的 QString
如果在这两种情况下都没有完成复制?
最佳答案
这是因为魔法是有代价的。 QString 不会复制整个字符串,但会计算引用。 QString 的多次复制会减慢程序的速度。如果 const QString&
足以满足您的需求,为什么不使用它呢?它仍然更快。
关于c++ - 通过 const 引用传递 Qt 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17071530/