asker160 发表于 2016-06-30 10:41

"函数"可以作为左值吗?可否算成是callable object?

如题。type_traits里面并没有诸如is_lvalue这样的工具,只能判断is_lvalue_reference之类的。

我想知道,一个函数,本身可以作为左值吗?
还有就是callable object的概念,object是不是一个可以实例化的东西,例如函数对象。那么函数就不能算是callable object?

是这样吗

windoze 发表于 2016-06-30 13:33

函数不能当左值,但它是callable object。
你定义了一个函数就有一个实例,你能引用它也能取它的指针,但你不能创建新函数的实例,也不能copy一个已有函数,函数在C++里是真正意义上的singleton。

neodreamerus 发表于 2016-07-11 15:36

不能当lvalue,
函数指针,函数对象可以当lvalue
页: [1]
查看完整版本: "函数"可以作为左值吗?可否算成是callable object?