Присвоение значений ОС конкретным строкам в C++
Я пытался присвоить значение строке в зависимости от ОС, код ниже
#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
Кто-нибудь может объяснить это поведение?