1
4
传递值/引用和常量正确性是两个不同的概念。但是一起使用。 传递值
通过引用传递
如果您知道复制结构可能会导致性能损失,请始终使用引用传递。这个函数在某些情况下可以(如果它在一个类中)保持指向它的指针,并指向一个外部对象。保持指向外来对象的指针意味着您应该知道它的生命周期以及这个外来对象何时会越界。更重要的是,对外来对象的更改会出现在指针上。 const正确性
添加
|
2
2
最大的问题是
这个
与以往一样,在这里不应高估绩效的收益或损失。更多的是关于语义和约定。 |
3
0
路过
如果编译器知道函数没有修改它的参数,那么它也可以添加一些额外的优化。例如,它可能会导致编译器根本不执行复制。 |
4
0
这是:
有点不寻常,因为虽然它不会为调用者(可以传递常量或非常量值)更改任何内容,但它限制了函数可以在内部执行的操作。这没有多大的价值,也不是一般的做法。
如果值的复制成本很高,包括如果值大于目标平台上大约两个指针,则按引用传递(const或not)会更有效。换句话说,如果
|
rookie · 检查函数模板的所有参数包参数是否属于int 1 年前 |
ivaigult · -W转换和隐式字符串到布尔类型转换 1 年前 |
rainer · 后台插入程序的初始化 1 年前 |
Community wiki · 以理智、安全和高效的方式复制文件 1 年前 |
Shefali Kanaujia · 对C中向量的向量进行排序++ 1 年前 |
Ma Joonyoung · 粗粒度和细粒度链表的时间比较 1 年前 |