C++ I / O的位移位运算符
示例
运算符<<和>>通常用作“写”和“读”运算符:
std::ostream重载<<到写变量基础流(例如:std::cout)
std::istream重载>>到从底层流读取到一个变量(例如:std::cin)
如果要在class/struct之外“正常”重载它们,则它们的执行方式类似,不同之处在于,指定参数的类型不同:
返回类型是您要从其重载(例如,std::ostream通过引用传递)的流,以允许链接(链式:)std::cout<<a<<b;。例:std::ostream&
lhs将与返回类型相同
rhs是您要允许从中进行重载的类型(即T),const&出于性能原因而不是传递值(rhs无论如何都不应更改)。范例:constVector&。
例:
//Overload std::ostream operator<< to allow output from Vector's
std::ostream& operator<<(std::ostream& lhs, const Vector& rhs)
{
lhs << "x: " <<rhs.x<< " y: " <<rhs.y<< " z: " <<rhs.z<< '\n';
return lhs;
}
Vector v = { 1, 2, 3};
//现在你可以做
std::cout << v;
热门推荐
10 祝亲友祝福语大全简短
11 祝贺升职文案祝福语简短
12 鲜花礼物结婚祝福语简短
13 祝福语简短文案梳子
14 寿宴文案短句祝福语简短
15 回复群内祝福语简短
16 幼师辞职后祝福语简短
17 朋友领证花束祝福语简短
18 对患者生日祝福语简短