虚函数的声明和定义
如果我想把一个虚函数先声明,再定义,声明时使用了virtual关键字,为什么定义时就不能加virtual了呢?
例如:
在animal.h文件中定义animal类,并声明它的成员函数
#ifndef ANIMAL_H
#define ANIMAL_H
class animal
{
public:
animal();
void sleep();
virtual void breathe();
}
#endif
在animal.cpp文件中定义animal类的函数:
#include "animal.h "
#include <iostream.h>
animal::animal()
{
cout < < "这是构造函数 " < <endl;
}
void animal::sleep()
{
cout < < "animal sleep " < <endl;
}
virtual void animal::breathe()
{
cout < < "animal breathe " < <endl;
}
这样会报错,为什么呢?
[解决办法]
语法规定。仅此而已。