如何使运算符的左操作数<<一个功能?

时间:2012-01-02 11:33:41

标签: c++ qt operator-overloading

void operator<< (const Integer& left, const Integer& right)
{
    cout << "\n: " << right.i;
}

可以像:

一样访问
Integer obj;
obj << 5 << 3 << 2;

精细:

qDebug的作用类似于qdebug() << 2;

这意味着<<运算符的左操作数是一个函数。

用户定义函数的语法应该是什么,以便我可以写:
myfunc() << 2;

1 个答案:

答案 0 :(得分:5)

左操作数不是函数,它是函数返回的值。具体来说,qDebug()会返回QDebug的实例,其中定义了大约20个<<的重载。