'case' 之前的预期不合格 ID

Expected Unqualified-id before 'case'

声明数组时出现错误。为什么会发生这种情况,我该如何解决?我似乎无法在不抛出此错误的情况下声明数组。在此之前,我尝试过使用 vector<> 。我正在寻找创建一个字符串数组。我在 google 上搜索了这个错误,对于我看到的几乎每个人来说,这是一个语法错误,通过切换代码即“[]array”而不是 "array[]"。在这里,我已经按照正确的顺序排列了数组语法,但我仍然得到这个错误。谢谢

int main()
{
    const string case[3]; //<- Error right here before 'case'
    int selection; //choice to open skin
    srand( time(0));
    int skinChance; //The number that determines the skin quality
    while(true)
    {
        cout << "Open Case \n";
        cin >> selection;
        if(selection == 1)
        {
            skinChance = rand()%10;
            if (skinChance <= 5)
            {
                //Blue Skin
            } 
            else if (skinChance >= 6 && skinChance <= 9)
            {
                //Purple/Pink Skin
            }
            else if (skinChance == 10)
            {
                //Red Skin
            }

        } 
        else
        {
            cout << "Not valid\n";
        }
    }   
}

您不能使用 case 作为变量名。 caseC++ 的关键字。由于它们由语言使用,因此这些关键字不可用于重新定义或重载。

您可以在这里看到 c++ 中使用的所有关键字的 list

case 是 C++ 中受保护的关键字,因为它是 switch-case 语句所必需的。您不能将其用作变量名。

case 是符合 C/C++ 标准的关键字。

switch(arg){
   case arg1:
   //some statements
   break;
}