当前位置:网站首页>什么是虚函数?
什么是虚函数?
2022-07-28 02:39:00 【一战成硕冲冲冲】
虚函数的使用
- 是C++中用于实现多态的机制,“动态联编”,一个类函数的调用并不是编译时被确定的,而是在运行时刻确定
class A
{
public:
virtual void foo0 {cout << "A::foo() is called"c<<endl;}
}
class B: public A
{
public:
virtual void foo0{ cout <<"B::foo0 is called" << endl;}
};
那么,在使用的时候,我们可以:
A *a = new B();//父类指针指向子类的对象
a->foo();
- 构造函数不能为虚函数
- 基类的析构函数应该为虚函数
- 友元函数不能为虚,因为友元函数不是类成员,只有类成员才能是虚函数
设计模式
- 面向对象设计原则的实际运用,对类的封装性,继承性。封装性,提高代码的可重用性,代码的可读性和代码的可靠性
开闭原则
- 对扩展开放,对修改关闭,当需求改变时,在不修改软件实体的前提下,可以扩展模块的功能,以此来满足新的需求;
- 软件测试时着重对于扩展的新代码进行测试;
- 提高软件的可维护性,可维护性和延续性更强;
- “抽象约束,封装变化”
里氏替换原则
- 继承必须保证超类所拥有的性质在子类中仍然成立
依赖倒置原则
高层模块不应该依赖低层的模块,两者都应该依赖于抽象;
CIass JDshop : public Shop{
virtuall void sell0;
)
Class Customer{
void shopping(Shop *pShop)
{
cout<<Customer.name<< pShop-sell0<<endl:
}
单一职责原则
接口隔离原则
迪米特法则
合成复用原则
设计模式行为型
- 用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间相互协作共同完成单个对象都无法单独完成的任务。
模板模式
- 已知算法的步骤执行顺序,但某些步骤的具体实现未知;
- 定义一个操作中的算法骨架,而将算法的一些步骤延迟到子类中,使得子类可以不改变该算法结构的情况下重定义该算法的某些特定步骤;
class Frame
{
public:
};
边栏推荐
猜你喜欢

“讳疾忌医”的开源走不远

c#——switch case语句

Summary of static blog building tools

傅里叶级数

Interview experience: first tier cities move bricks and face software testing posts. 5000 is enough

"Introduction to engineering electromagnetic field" after class exercises with answers

静态博客搭建工具汇总

Intelligent industrial design software company Tianfu C round financing of hundreds of millions of yuan

ssm整合(整合配置)

redis网络模型解析
随机推荐
Design and practice of unified security authentication for microservice architecture
QT topic 1: implementing a simple calculator
[QNX hypervisor 2.2 user manual]9.10 pass
Which of the four solutions of distributed session do you think is the best?
ssm整合(整合配置)
vba批量读取sql的create文来创建表
Kubernetes-----介绍
QFileDevice、QFile、QSaveFile、QTemporaryFile
并发编程面试题总结
嵌入式开发:提示和技巧——用C进行防御性编程的最佳实践
R 笔记 MICE
NPDP candidates! The exam requirements for July 31 are here!
【类的本质(Objective-C语言中)】
【2022牛客多校2 K Link with Bracket Sequence I】括号线性dp
汇总了50多场面试,4-6月面经笔记和详解(含核心考点及6家大厂)
Random forest and integration method learning notes
Data Lake: each module component
Redis群集
Uniapp——拨打电话、发送短信
[red team] att & CK - file hiding