最近这一周一直忙着全国计算机等级考试二级C++,在准备的这段时间里,学到很多东西。尤其是在练习上机操作方面。通过练习往年的题目,在上机改错的题型方面,做了一些总结,我觉的考点无外乎下面的几个方面。
一、 无论是构造函数、析构函数还是成员函数,在类外定义的时候不要忘记作用域 ::
如:Class Student
{ intAge;
Student(int age) ;
}
Student::Student(intage)
二、有关构造函数的题型
构造函数的成员列表初始化考点:不要忘记“:”不能赋值
Student(int age): Age=1{}
改正为:Student(int age): Age(1) {}
构造函数没有返回值
Class Student
{
......
void Student() {}
}
改正:去掉void
三、析构函数方面
1、析构函数没有返回值
Class Student
{ int * P;
......
void ~Student() {}
}
改正:去掉void
2、析构函数没有参数
Class Student
{ int * P;
......
void ~Student(Student & sdt) {}
}
改正:去掉Student & sdt
3、析构函数在释放指针时不要丢掉[],同时释放的指针不带*
Class Student
{ int * P;
......
void ~Student() {delete p ; }
}
改正:去掉delete [] p
另外:静态成员函数、静态成员在类体中注明关键字static,而在类体外则不需要在写明static。友元函数在类体外定义时不用加类名和作用域(::)。
这里总结的是一些不用根据题意,只看形式就可以发现的错误,对于那些涉及题意,需要逻辑判断的错误则要求根据题意来改正错误了(不过这种题目站的比例不是很大)。希望这些总结能够对你有用。