我在.h文件中声明一个字符串变量,并将其分配到我的.cpp文件中 demo.h:
#ifndef DEMO_H
#define DEMO_H
#include <string>
string s;
#endif
和demo.cpp:
#include "demo.h"
int main(){
s = "s";
return 0;
}
当我编译demo.cpp时,它说
demo.h:错误:'string'没有命名类型
demo.cpp:错误:'s'未在此范围内声明
但我实际上在我的.h文件中包含了字符串 我不知道为什么它不起作用
答案 0 :(得分:2)
您缺少命名空间,在这种情况下,demo.h应如下所示:
#ifndef DEMO_H
#define DEMO_H
#include <string>
std::string s;
#endif