今天面试遇到的一些问题

我今天开始面试了,理想很丰满,现实很骨感,武汉这边的内卷比想象的更严重。要的熟练度和知识储备也是非常的大,相较于杭州,也是醉了,心态有些裂开了。

接下来总结下第一场面试遇到的一些问题,明天在进行解答更新:

1.listwediget中如何删除选中项

这个问题源于我太久没摸过控件有些生疏了,之前都研究算法去了,没有管这些,其实很简单

就直接调用takeItem()就行了。

更多的看这个QListWedget控件使用指南-优快云博客

2.如何快速在数组中查找特定项

我当时第一个想法就是二分查找,但考虑到需要快排,他们不让使用stl,全部要自己实现,这个我明天来写一下,其实最快的方法是hash算法

3.movetothread

我之前接触的主要是qthread和qthreadpool,现在已经不用那些了,qt5就已经使用movetothread了,类继承qobject,把函数对象丢给他就行了,也是醉了,好像还有一个qconcurrent搭配feature,好像是这么写的,再研究研究,最新研究看这里

论QT6多线程技术-优快云博客

4.字符大小结构体大小

我是真没想到会考这个,平常都不注意,64位int 4字节,char 1字节,short 2字节,float 4字节,结构体的话是他里面的所有字符加起来就行了

5.connect的第五个参数以及connect的类型细分

自动用习惯了,其他的也要了解,有一个是跨线程通讯的Qdequeueconnect,跨线程通讯用这个,我之前一般用自动连接,可以显示使用这个。

连接类型行为描述适用场景
​**Qt::AutoConnection**(默认)自动选择:
- 同线程 → DirectConnection
- 跨线程 → QueuedConnection
通用场景,无需手动指定连接类型
​**Qt::DirectConnection**槽函数立即执行,在发送者线程中运行。
(无论接收者对象在哪个线程)
单线程或确保线程安全的操作
​**Qt::QueuedConnection**槽函数异步执行,在接收者线程的事件循环中排队运行。跨线程通信(如更新 GUI)
​**Qt::BlockingQueuedConnection**槽函数在接收者线程中运行,但发送者线程会阻塞直到槽函数完成。需要同步等待结果的跨线程操作
​**Qt::UniqueConnection**按位或(|)与其他类型组合使用,确保同一信号和槽之间仅有一个连接防止重复连接导致槽函数多次触发

6.qset

qset的内部每个元素都是唯一的,插入重复的会自动忽略,具有无序性,内部存储顺序不固定,与插入顺序无关。基于哈希实现

常用的操作有

方法/操作描述示例
insert(value)插入元素(若存在则忽略)set.insert(42);
contains(value)检查元素是否存在if (set.contains(42)) {...}
remove(value)删除指定元素set.remove(42);
size() / count()返回元素数量int n = set.size();
isEmpty()判断集合是否为空if (set.isEmpty()) {...}
clear()清空集合set.clear();
unite(otherSet)合并两个集合(取并集)set1.unite(set2);
intersect(otherSet)求交集(保留共有元素)set1.intersect(set2);
subtract(otherSet)求差集(移除共有元素)set1.subtract(set2);

与其它容器的对比

容器有序性唯一性底层结构典型用途
QSet无序哈希表快速查找、去重
QList有序动态数组顺序访问、随机访问
QMap按键排序键唯一平衡树/哈希表键值对存储(需排序)
QVector有序动态数组类似 QList,内存连续

7.union联合体

union里面的所有类型共享内存,他的内存大小就是内部占内存最大的那个字符,有点像那个结构体,结构体是所有类型的大小加起来,union是赋值的下一个会把上一个给覆盖掉。

8.项目经历梳理

说实话,我还是不够熟练,我自己写的项目有些细节怎么实现的我自己可能都会忘了,哭死,加班加点补

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值