作业帮 > 综合 > 作业

虚函数与纯虚函数的区别,我的理解是不是子类的函数实现了父类的函数,但是重写了方法,就是纯虚函数

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/05/16 04:16:47
虚函数与纯虚函数的区别,我的理解是不是子类的函数实现了父类的函数,但是重写了方法,就是纯虚函数
1. lz的理解还是有些出入.虚函数与纯虚函数 在他们的子类中都可以被重写.它们的区别是:
(1)纯虚函数只有定义,没有实现;而虚函数既有定义,也有实现的代码.
(2)包含纯虚函数的类不能定义其对象,而包含虚函数的则可以.
2. 虚函数的引入主要是为了实现多态,这部分内容是c++的精髓.
3. lz不懂可继续追问
再问: 可以来点代码加以讲解么,多谢了啊
再答: 1)纯虚函数一般没有代码实现部分,如 virtual void print() = 0; 2)而一般虚函数必须要有代码的实现部分,否则会出现函数未定义的错误。 virtual void print() { printf("This is virtual function\n"); } 3)面向对象的三个特点是:封装,继承和多态。而虚函数就是实现多态的一个重要途径,lz如有不懂之处可百度一下或继续追问。