小编Dhr*_*wat的帖子

何时通过引用传递并返回c ++中的函数

首先,我在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)

我不明白通过引用传递和返回有什么帮助?

c++

4
推荐指数
1
解决办法
79
查看次数

如何返回静态变量有所作为?

int main(){    
  char *s ;
  char *fun( ) ;
  s = fun( ) ;
  printf ( "%s", s ) ;
}

char *fun( ){    
  char buffer[30] ;
  strcpy ( buffer, "RAM - Rarely Adequate Memory") ;
  return ( buffer ) ;
}
Run Code Online (Sandbox Code Playgroud)

为什么上面的代码打印出不可预测的结果?如何使char buffer [30]静态帮助?

c

0
推荐指数
1
解决办法
101
查看次数

标签 统计

c ×1

c++ ×1