当前位置: > 函数对象的一个小问题...
题目
函数对象的一个小问题
比如说有个类如下:
class Negate
{
public:
int operator() (int n) { return -n;}
};
我看书在使用时,是直接Negate( ),对此我有点不解,Negate( )到底表示什么,表示是新建的Negate类的一个对象吗?如果是的话,为什么可以直接用Negate( )产生新对象?
还是有点不解,比如:
#include
using std::cout;
void Callback(int n,Negate & neg)
{
int val = neg(n); //调用重载的操作符“()”
cout

提问时间:2021-03-25

答案
sorry ,看错了题目.Negate( );如果这么写是建立临时对象,建立后马上销毁,调用初始化函数.对象一旦初始化完成,比如:有一个Negate类的对象a那么比如a(n)就是调用其重载的括号运算符 int operator() (int n) { return...
举一反三
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
奥巴马演讲不用看稿子.为什么中国领导演讲要看?
想找英语初三上学期的首字母填空练习……
英语翻译
1,人们染上烟瘾,最终因吸烟使自己丧命.
版权所有 CopyRight © 2012-2019 超级试练试题库 All Rights Reserved.