这必须是一个错误(标题中的错误),但有谁知道如何解决它或只是绕过它?
这是代码(我还有两个具有相同问题的其他文件):
#include <iostream>
#include <string>
class Person
{
public:
Person(): name(""), dob(""), gender("") { }
Person(string n, string d, string g): name(n), dob(d), gender(g) { }
virtual void print() { cout << name << " " << dob << endl; }
protected:
string name;
string dob;
string gender;
};
Run Code Online (Sandbox Code Playgroud)
上面代码中的每个"字符串"实例都会收到"无法解析标识符字符串"错误.
它也无法解析标识符"cout"和"endl".同样,有没有人知道解决方法或某种修复?任何帮助表示赞赏,谢谢.
小智 6
cout,endl和string,不在全局命名空间中.他们在里面std.
您需要使用std::cout,std::endl,std::string来代替.
如果你想避免std::每次都附加,你可以使用using.
把这些包括在内:
using std::cout;
using std::endl;
using std::string;
Run Code Online (Sandbox Code Playgroud)