首先,我在c ++中创建了一个复杂的类,它有两个成员数据--real和imaginary.(形式为a + ib).当我试图为复杂类对象重载<<运算符如下 -
friend ostream operator<<(ostream ,complex ); in .h file
ostream operator <<(ostream o,complex c){
o<<"real part"<<c.real;
o<<"imaginary part<<c.imaginary;
return o;
}
Run Code Online (Sandbox Code Playgroud)
在.cpp文件中,它不起作用,而是打开一个ios_base文件并在那里显示错误.但是当我通过引用传递并通过引用返回如下时,相同的代码会完美地重载<<
ostream& operator <<(ostream& o,complex& c)
{
//same as before
};
Run Code Online (Sandbox Code Playgroud)
我不明白通过引用传递和返回有什么帮助?
| 归档时间: |
|
| 查看次数: |
79 次 |
| 最近记录: |