由于学数据结构开始学习C++,没有太系统的学习,因此编译和运行上都有很多错误
1 error : 'cout' was not declared on the scope
这是由于没有声明 using namespace std
2在第一次顺序表实验中,原来的代码看书敲的是这样
template<class T>
bool SqList<T> :: Remove(int i)
{
if((length)<0)throw "下溢";
if(i<1||i<length+1)throw "不存在";
for(int j=i;j<length;j++){
elem[j] = elem[j+1];
}
length--;
return true;
}
这是main函数中的调用
case 3:
cout<<"请输入要删除元素的位置:";
cin>>i;
try{
L.Remove(i);
cout<<"删除成功";}
catch(char * err){
cout<<err<<endl;}
break;
然后运行时就报错了啊啊啊
从提示信息来看基本无法判断是个啥错,还好有百度和大牛们告诉了我
throw的必须是一个对象,而C++中字符串常量是一个数组而不是对象
原来是这样啊,坑爹的教科书!!!