L'utilisation de l'identificateur non déclaré dans le fichier d'en-tête (Clang)

Je suis entrain de créer une fonction pour lire le contenu d'un fichier, situé dans un IO.cpp fichier:

#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;
}

Avec le fichier d'en-tête IO.h:

#ifndef IO_H
#define IO_H


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

#endif //IO_H

Mais j'obtiens une erreur de Clang qui dit

include/IO.h|9|erreur: l'utilisation de l'identificateur non déclaré 'std'|

Et je ne peux pas comprendre comment le résoudre.

Vous n'avez pas inclure <string> IO.h

OriginalL'auteur Axmill | 2014-11-10