在头文件(C)中使用未声明的标识符

阿克斯米尔

我正在创建一个函数来读取位于IO.cpp文件中的文件的内容:

#include "IO.h"
#include <iostream>
#include <fstream>
IO::IO()
{
    //ctor
}

void IO::readFile(std::string fileName)
{
    std::ofstream inputFile;
    inputFile.open(FileName);
    inputFile >> fileName.toStdString;
    inputFile.close();
    std::cout << fileName;
}

使用头文件IO.h:

#ifndef IO_H
#define IO_H


class IO
{
    public:
        IO();
        void readFile(std::string inputFile);
    protected:
    private:
};

#endif // IO_H

但是我从Clang得到一个错误

include / IO.h | 9 |错误:使用未声明的标识符'std'|

而且我不知道如何解决它。

陆迁格里戈尔

解析标头(特别是该void readFile(std::string inputFile);行)时,编译器不知道std存在名称空间,而string在该名称空间内部则少得多

#include <string> 在标题中。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章