你们中的许多人可能知道 C++ 中的以下内容:
cout << 1 << 2 << 3 << 4; // would produce 1234
我正在尝试重新创建相同的东西 - 而是将其封装到一个类中并将值递增到一个整数变量中。
我得到错误:
错误:'int operator<<(const int&, const int&)' 必须有一个类或枚举类型的参数|
class Test
{
private:
int data;
public:
Test() { data = 0; }
void print() { cout << data; }
friend int operator<<(const int &x, const int &y)
{
data += x;
data += y;
}
};
int main()
{
Test a;
a << 50 << 20;
a.print(); //if I had only 1 parameter - it worked and printed out only 50
return 0;
}