如何调试错误“没有方法'ios_base :: ios_base的定义”

时间:2016-07-13 11:55:56

标签: c++

我正在进行Catapul System级别综合并尝试在C ++中实现代码,而在编译期间我收到错误:

  

没有方法'ios_base :: ios_base

的定义

请帮助删除此错误。

#include<ac_int.h>
#include<iostream.h>
#include<fstream.h>
#include<math.h>
using namespace std;
#pragma hls_design top
int main() {

     ac_int<3>R;
     ac_int<3>G;
     ac_int<3>B;

      fstream rfile;
      rfile.open("image_r.txt",fstream::in | fstream::out | fstream::binary);
         if (rfile.is_open())
           {

            rfile>>R>>G>>B;
           rfile.close();   
           }

    int fr = R / 255;
    int fg= G/ 255;
    int fb = B / 255;

  ac_int<3>Y = ac_int<3> ((0.2989 * fr )+ (0.5866 * fg) + (0.1145 * fb));
ac_int<3>Cb = ac_int<3> ((-0.1687 * fr) - (0.3313 * fg) + (0.5000 * fb));
ac_int<3>Cr = ac_int<3> ((0.5000 * fr )- (0.4184 * fg) - (0.0816 * fb));

 fstream wfile("image_w.txt",fstream::in | fstream::out | fstream::binary); 
        if (wfile.is_open())
          {
               wfile<<Y<<Cb<<Cr<<endl;
               wfile.close();
         }


return 0;

}

1 个答案:

答案 0 :(得分:0)

标题iostream和fstream不需要扩展名。但是在你的代码中输入了:

#include<iostream.h>
#include<fstream.h>

所以你应该把它改成:

#include<iostream>
#include<fstream>

删除.h扩展名,也可能删除编译器生成的错误。

AND DON&#39; T USE using namespace std; 相信我,因为你的项目变得越来越大,这将使事情变得越来越困难。而是手动添加名称空间std::