8.31作业

一、面试题

1、什么是多态、虚函数、纯虚函数

多态是一种行为的多种实现方式,通过虚函数和虚指针来实现。是子类对父类虚函数重写然后父类通过虚指针调用重写后的实现。虚指针在类的最前面会指向一个虚函数表。里面记录了虚函数包括子类重写的。虚函数就是在函数前面加上virtual关键词且满足继承。纯虚函数指的是其本身没有需要实现必要的函数,声明只是为了给子类进行继承使用。

2、将引用作为函数参数的特点

函数参数本身是函数之间数据传输的方式。引用则是对数据起别名。其本质也是一种地址传递,但相比于传递指针,其本身不会另外开辟空间,调用的既是其本身,所以效率更高。其次如果是不允许修改的场合应用常引用,且常引用类只能调用常成员对象。

3、结构和联合的区别

结构体和联合体本身都是数据结构,其内部都能定义多个数据类型不同的成员。不同点在于结构体大小为结构体成员大小之和且满足结构体对齐。而联合体大小则是联合体中最大成员的大小。

二、今日总结

在信号和槽函数中,每个组件都有其对应的信号和槽函数。通过这些来实现组件间通信。

1、连接方式

qt4

connect(组件一指针,SIGNAL(组件一有的信号),组件二指针,SLOT(组件二有的槽函数));

qt5

connect(组件一指针,&组件类::信号,组件二指针,&组件类::槽函数);

connect(组件一指针,&组件类::信号,[](){});

2、连接关系

一个槽函数可以对应多个信号

一个信号可以对应多个槽函数

一个信号可以对应另一个信号,即一个信号被调用则两个信号同时被调用

三、作业

源文件

8.31作业_第1张图片8.31作业_第2张图片

8.31作业_第3张图片头文件

8.31作业_第4张图片8.31作业_第5张图片

你可能感兴趣的:(qt)