c++中运算符(\" << \")重载ostream&是什么意思
friendostream&operator+(ostream&os,constCPolynomial&);为什么一定要加这个...
friend ostream & operator + (ostream &os, const CPolynomial&);
为什么一定要加这个 展开
为什么一定要加这个 展开
展开全部
运算符重载,是对现有操作符使用于自定义用户类型的一种扩展,但具体的性质不能变,如<<表示流操作符左侧对象为流的本质不能变,+为两元操作符本质不能变,再如,对于->重载必须返回指针类型不可变!
即,即使进行运算符重载,也只是有限自由!
friend ostream & operator << (ostream &os, const CPolynomial&)
operator是进行运算符重载的关键词,它后面就是重载的运算符,左侧是流,右侧是流处理的对象。这样你就可以处理如何输入或输出该对象
即,即使进行运算符重载,也只是有限自由!
friend ostream & operator << (ostream &os, const CPolynomial&)
operator是进行运算符重载的关键词,它后面就是重载的运算符,左侧是流,右侧是流处理的对象。这样你就可以处理如何输入或输出该对象
展开全部
如果没猜错,ostream是个类
ostream&的意思是返回值是类的一个引用,就是直接对返回的类的对象进行操作(共享一个地址,加这个就是可以对形参进行修改
后面的ostream &os就是传递一个类的对象的地址
ostream&的意思是返回值是类的一个引用,就是直接对返回的类的对象进行操作(共享一个地址,加这个就是可以对形参进行修改
后面的ostream &os就是传递一个类的对象的地址
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
friend ostream &operator<< (ostream &out, Complex &obj){...}
以上文为例:
“friend”声明函数为“ostream”类的友元函数
“ostream”声明后文的函数为“ostream”类
“operator<<(ostream &out, Complex &obj)”意为对双目流运算符“<<”进行重载,对象为“ostream”类的out的引用与“Complex”类的obj的引用
“&operator<< (ostream &out, Complex &obj)”意为函数“&operator<< (ostream &out, Complex &obj)”的返回值以引用的形式返回
“ostream”类是一种特殊的类,需要作为“左值”,不能直接赋值或者拷贝(即以一个会被释放的临时变量返回),上文的函数执行完后(执行语句省略了)将以一个“ostream”类对象的引用返回,才符合“ostream”类的要求。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询