c++定义对象a时提示1.a前缺少“;”2.未定义标识符a,

cout<<"选择你要添加的车辆序号"< cout cin>>s;
switch(s)
{
case 1:
{
cout<<"正在添加大客车"<<endl;

            big_car a;

            break;
            }
        case 2:
            {
            cout<<"正在添加小轿车"<<endl;
            sedan a;
            break;
            }
        case 3:
            {
                cout<<"正在添加卡车"<<endl;
                truck a;
            break;
            }

        default:
            cout<<"指令有误!!!"<<endl;

        }


    程序如上,其中big_car、sedan、struck为类;
    struck r的对象a定义正确;
    但big_car、sedan定义出错;
    错误提示1.a前缺少“;”2.未定义标识符a。

    表示类已经正确加入工程项目。
    也正确包含相关头文件,
    求大神解决!!!!!!!!!!!!!!!!

在{}这之中是可以的。

感觉还是类的定义的问题,因为我复制你的,然后自己随便写了三个最简单的什么都没有的类作为big_car,sedan,truck,编译无报错。也可能是你的编译器出了什么状况,试试重新构建工程。

big_car a;

移到Switch外面

可能还是头文件的问题,因为从逻辑上来说完全没有问题。

switch case里面不允许定义变量,

可以用排除法。
把容易出错部分代码注释了,编译, 确定出错位置。

switch里面定义变量的问题吧。