cout не является членом std
Я практикую использование файлов mulitple и заголовочных файлов и т. д. Поэтому у меня есть этот проект, который берет два числа, а затем добавляет их. Довольно просто.
вот мои файлы:
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;
}
добавить.h
#ifndef ADD_H_INCLUDED
#define ADD_H_INCLUDED
int readNumber();
void writeAnswer(int x);
#endif // #ifndef ADD_H_INCLUDED
ошибка появляется в io.СРР. Точные ошибки:
есть ли у кого-нибудь идея, почему это может происходить? Спасибо.
EDIT: вчера я сделал небольшой проект с таким же количеством файлов (2 .cpp и 1.h) И я не включил заголовок iostream в другой .cpp и он все еще компилируется и работает нормально.
3 ответов
У меня была похожая проблема и оказалось, что мне пришлось добавить дополнительную запись в cmake
включить файлы.
поскольку я также использовал библиотеку zmq, мне пришлось добавить это в включенные библиотеки.
также помните, что это должно быть:
#include "stdafx.h"
#include <iostream>
, а не наоборот
#include <iostream>
#include "stdafx.h"