我用c ++创建了一个新项目,但是我仍然遇到相同的错误
#include <iostream>
#include <string.h>
#include "Computer.cpp"
#include "Computer.h"
using namespace std;
int main()
{
cout << "Hello World!" << endl;
return 0;
}
#ifndef COMPUTER_H_INCLUDED
#define COMPUTER_H_INCLUDED
#include <string>
class Computer
{
public:
std::string marca;
float prezzo;
bool acceso;
Computer();
void Accenditi();
void Spegniti();
void ImpostaMarca(std::string m);
void ImpostaPrezzo(float p);
};
#endif
#include "Computer.h"
Computer::Computer()
{
}
void Computer::Accenditi()
{
if(!acceso)
{
acceso = true;
}
else
{
std::cout << "Sono già acceso";
}
}
void Computer::Spegniti()
{
if(acceso)
{
acceso = false;
}
else
{
std::cout << "Sono già spento";
}
}
void Computer::ImpostaMarca(std::string m)
{
marca = m;
}
void Computer::ImpostaPrezzo(float p)
{
prezzo = p;
}
我不明白Computer.cpp有什么问题,我不断收到“提示不是std的成员”。我尝试添加“使用命名空间标准”,并且还尝试添加库#include,但是我得到了一个名为“ makefile.win”的新文件。我该如何解决该错误?
答案 0 :(得分:0)
您需要这样在Computer.cpp文件中包括iostream标头:
include <iostream>
为使您的生活更轻松,您还可以添加:
using std::cout;
using std::endl;
在包含内容的底部,这样就不必每次都添加“ std :: cout”,只需使用“ cout”
也要添加:
您可以从main.cpp中删除include computer.cpp,只保留标题即可。 C ++链接器会自动将您的computer.h和computer.cpp链接在一起,因为.cpp包含标题,而您的主文件也包含computer.h