我现在试图解决这个问题很长一段时间了:
我有以下课程(博士):
Doctor.h:
#pragma once class Doctor { private: string firstName; public: Doctor(); ~Doctor(); };
Doctor.cpp:
#include "stdafx.h" #include "string" #include "Doctor.h" using namespace std; Doctor::Doctor() { } Doctor::~Doctor() { }
和我的主要功能:
#include "stdafx.h" #include#include "Doctor.h" using namespace std; int main() { return 0; }
错误C3646'firstName':未知的覆盖说明符
错误C4430缺少类型说明符 - 假定为int.注意:C++不支持default-int
错误C3646'firstName':未知的覆盖说明符
错误C4430缺少类型说明符 - 假定为int.注意:C++不支持default-int
所有在Doctor.h的第5行,我声明了一个字符串变量
也许
header is missing.
尝试包括它.
Doctor.h
#ifndef DOCTOR_H_ #define DOCTOR_H_ #includeclass Doctor{ std::string name; public: Doctor(); ~Doctor(); }; #endif
Doctor.cpp
#include "Doctor.h" Doctor::Doctor() { } Doctor::~Doctor() { }
Main.cpp的
#include "Doctor.h" int main() { return 0; }
它工作正常.我测试过了.
你需要#include
的Doctor.h
,你需要的标准命名空间std::string
.