#include <iostream>
using namespace std;
const int size = 3;
class vector {
int v[size];
public:
vector();
vector(int *x);
friend vector operator * (int a, vector b);
friend vector operator * (vector b, int a);
friend istream & operator >> (istream &, vector &);
friend ostream & operator << (ostream &, vector &);
};
}
如上面的代码,我无法掌握什么
friend istream & operator >> (istream &, vector &);
在这里,我所知道的,该流用于数据的输入流和用于输出的 ostream 但是 istream 和在运算符重载之前是什么意思>>。
这意味着它返回对istream
对象的引用。这对于运算符链接是必需的,因为您习惯于cout
:
std::cout << "foo" << "bar";
如果不返回对自身的引用,这部分:<< "bar"
,是不可能的。