1

我试图根据操作系统为字符串赋值,代码如下

#include <string>
using namespace std;
string path;
#ifdef __linux__
    path = "/temp";

#elif _WIN32
    path = "c://temp";
#endif

这给出了一个错误:“âpathâ 没有命名类型”

但是这段代码可以正常工作

#include <string>
using namespace std;
#ifdef __linux__
    string path = "temp";
#elif _WIN32
    string path = "c://temp";
#endif

谁能解释这种行为?

4

0 回答 0