![]() |
1
20
函子可以(和) 将
因此,函子有一个真正的性能优势,这在紧循环中可能是巨大的。此外,函子通常更容易组合,尤其是在STL中发挥更好的作用:
我讨厌它们把代码弄得乱七八糟,但考虑到所有的优点,我更喜欢它们而不是函数指针。 |
![]() |
2
11
然而,在实践中,主要是为编译器提供足够的信息来进行有效的优化。 例如Visual C++ 2008,给出了以下代码:
|
![]() |
3
7
与函数指针相比,函数对象的一大优点是,您可以更轻松地在函数对象构造时绑定一些参数。
这种参数的“绑定”可以很好地用 boost::bind 和 boost::function |
![]() |
4
6
我的意见-#1更好,因为它更简单。
|
![]() |
5
1
函子可以是 more easily inlined 因此,当性能重要时,它可能是一个考虑因素。 |
![]() |
6
1
(有时你不得不对C++语法感到失望) |
![]() |
AstralHex · 矩阵乘法代码工作不正常 3 月前 |
![]() |
Fishie · 作为类成员的智能指针是否仍然自动释放?[关闭] 3 月前 |
![]() |
Die4Toast · 递归调用成员箭头运算符-> 3 月前 |
![]() |
Anka Hanım · 关于结构和动态数组地址的问题 4 月前 |