IT-Swarm.Net

cout不是std的成员

我正在练习使用多个文件和头文件等。所以我有这个项目需要两个数字,然后添加它们。很简单。.

这是我的文件:

main.cpp

#include <iostream>
#include "add.h"

int main()
{
    int x = readNumber();
    int y = readNumber();

    writeAnswer(x + y);

    return(0);
}

io.cpp

int readNumber()
{
    int x;

    std::cout << "Number: ";
    std::cin >> x;

    return x;
}

void writeAnswer(int x)
{
    std::cout << "Answer: ";
    std::cout << x;
}

add.h

#ifndef ADD_H_INCLUDED
#define ADD_H_INCLUDED

int readNumber();
void writeAnswer(int x);

#endif // #ifndef ADD_H_INCLUDED

错误显示在io.cpp中。确切的错误是:

enter image description here

有谁知道为什么会这样?谢谢。.

编辑:我昨天用相同数量的文件(2 .cpp和1.h)创建了一个小项目,我没有在另一个.cpp中包含iostream标头,它仍然编译并运行正常。

159
Paul Hannon

#include <iostream>添加到io.cpp的开头。.

255
unkulunkulu

快速,可靠且价格合理的云托管

注册并在30天内获得$50奖金!

还要记住它一定是:

#include "stdafx.h"
#include <iostream>

而不是相反

#include <iostream>
#include "stdafx.h"
9
Jukes

我有一个类似的问题,结果发现我必须在cmake中添加一个额外的条目来包含文件。.

由于我也在使用zmq库,我还必须将它添加到包含的库中。.

1
Marco Rubio