您何时应该在C 中使用函数

When should you ever use functions over functors in C++?

本文关键字:函数 何时应      更新时间:2023-10-16

函数显然更有效,因为编译器更容易地将它们嵌入其中,并且它们可以通过参数化更好。您什么时候应该在函子上使用普通的旧功能?

功能支持分布式覆盖。函子没有。您必须定义函子本身的所有过载;您可以添加函数的新超载 where

功能支持ADL(参数依赖查找(,允许在参数类型的关联名称空间中重载。函子没有。

函数指针是(一种基于类型的无状态函数(,它是一个POD,这可以证明无国籍lambdas如何将其转换为它。此类功能(POD,无状态,类型擦除(很有用。