错误:未定义标识符“ostream”

时间:2013-12-17 20:53:47

标签: c++ g++ undefined undefined-reference ostream

首先,我已经全神贯注地寻找解决方案,但似乎无法修复它。在尝试编译源代码时,我收到以下错误。

  

g ++ -c -I / home / jcallahan / ACM / include / FANSI -I / home / jcallahan / ACM / FourtyTwo / Base -I / home / jcallahan / ACM / FourtyTwo / FunctionSpaces -I / home / jcallahan / ACM / FourtyTwo / MeshLib LagrangeFunctions.cpp   在/home/jcallahan/ACM/include/FANSI/MatrixVector.h:6:0中包含的文件中,                    来自LagrangeFunctions.cpp:17:   /home/jcallahan/ACM/include/FANSI/Matrix.h:184:24:错误:'ostream'尚未声明      void WriteToTextFile(ostream&);

错误来自包含的 Matrix.h Vector.h (我有更多这些错误只显示一个)。我相信错误在 Matrix.h / Vector.h 中。代码被截断,因为我不认为类成员函数与它有任何关系。

#include "AbstractMatrix.h"

class Matrix : public AbstractMatrix
{
  friend std::ostream &operator<<(std::ostream &,const Matrix &) ;
  friend std::istream &operator>>(std::istream &, Matrix &) ;
 public:

任何人都知道发生了什么或我如何解决它?有关其他信息,我使用的是g ++编译器。

1 个答案:

答案 0 :(得分:2)

您发布的文件应包含以下一行:

#include <iostream>

此外,错误消息包含以下定义:

void WriteToTextFile(ostream &) ;

需要像其他人一样更改为std::ostream