[错误]数字常量之前的预期标识符。-setlocale

时间:2017-01-01 02:10:39

标签: c++

我想使用setlocale(LC_ALL"..");,但我收到了这些编译错误:

  

数字常数之前的预期标识符
   在数字常量之前预期','或'...'

#include<iostream>
#include<fstream>
#include<cctype>
#include<iomanip>
#include<locale.h>
using namespace std;
class account
{
setlocale(LC_ALL"Turkish");

1 个答案:

答案 0 :(得分:1)

作为@TheUndeadFish points out in the comments,问题是您正在尝试调用函数setlocale,但您不在函数中。在C ++中,您只能在另一个函数内调用函数。因此,您可以这样称呼它:

int main()
{
    setlocale(LC_ALL, "Turkish");
}

您可以从类中调用函数,只要它是类的函数:

class account
{
public:
    account() { setlocale(LC_ALL, "Turkish"); }
};

int main()
{
    account a;
};

构建account时,会调用setlocale(LC_ALL, "Turkish");