- 博客(9)
- 收藏
- 关注
原创 对于函数返回“指针”的疑惑与分析
最近在看源码的时候,发现,好多的函数采用的是返回“指针”的方式。最开始看到这样使用的时候,我其实是充满着疑惑的,因为我想的是指针开辟之后如果不进行释放的话,可能会造成内存泄漏。那么那些大佬在写这个的时候,就没有想到这点吗?后来,对于这个疑惑,我向我的同事进行了请教,才茅塞顿开。造成内存泄漏的原因是“自由存储区中某一块内存的地址丢失了,找不到这块地址,然后进行了误操作”。简单来说,释放指针,...
2020-03-31 21:14:40 366
原创 对于一些具有相同属性的控件的配置的保存
这一段时间来,工作方面遇到了需要保存配置的情况。我采用的方式是使用文件的读写实现的配置的保存和读取,在这里面我遇到了一个情况就是对于很多个相同属性的控件的属性的保存问题,本来采用的是使用1和0表示按钮的选中与否,但是因为控件比较多,由于涉及的需要,那一页上有着二十多个按钮,对于此,如果采用1和0的方式表示,会显得很是繁琐。后来,灵机一动,是用了一个int类型的各个位进行存储。因为int类型是...
2020-03-31 21:04:40 211 1
原创 Qt网络编程时的一些注意点
记录一下在使用Qt进行网络编程时遇到的一些问题以及注意点。在使用QTCPSocket进行通信的时候,要注意一下对于它的readyRead信号和槽连接过程需要在执行过QTCPServer的nextPendingConnection函数之后进行,也就是说先用一个pTcpSocket = pTctServer->nextPendingConnection()获得这次连接的网络套接字结束的时候,...
2020-03-11 20:38:29 365
原创 泛型算法的“定制操作”以及“lambda表达式”
泛型算法中,有很多的算法是可以支持使用自定义的操作来代替默认运算符的,以排序算法sort为例,默认的sort是以字典序进行排序的,也就是直接采用的“<”运算符,但是如果我想重新定义一个排序的规则,此时就可以使用泛型算法的定制操作。主要方法有:1.向算法传递函数2.使用lambda表达式首先明确一个概念——“谓词”。谓词是一个“可调用的表达式”,其返回结果是一个可以用作条件的值。分...
2020-03-05 15:12:22 218
原创 泛型算法初识
泛型,表明是“普适的”,即不依赖于容器类型,甚至不是容器也可以使用,它提供了一些经典算法的公共接口。算法所依赖的仅仅是“迭代器”,所有具有迭代器的容器(包括不是容器的string,内置数组类型等)均可使用算法。如find函数,所有具有迭代器的容器(…)均可以使用这个函数完成查询功能。但是,对于find函数来说,需要进行比较(==)的操作,这个就依赖于元素类型。不仅仅是find函数,其他的一些...
2020-03-05 10:20:14 131
原创 如何更改const修饰的成员函数涉及到的数据成员
一般情况下,const修饰的成员函数,无法修改数据成员。但是在某种特殊情况下,我想要修改这个成员函数中涉及到打的数据成员,就应该使用到mutable关键字。mutable关键字的意思是可变的,可以在需要更改的数据的成员的前方使用该关键字进行修饰,就可以实现在const修饰的成员函数中修改数据成员了。如:class Screen{public: void TestFun() const;...
2020-03-03 14:56:25 617
原创 关于类型别名
设置类型的别名的两种方式:-使用 typedeftypedef std::string::size_type testType;testType cursor = 0;使用类型别名using testType = std::string::size_type;testType cursor = 0;两种方式等价,可以根据喜好使用。...
2020-03-03 14:41:00 102
原创 类的“封装”
“封装”是类的第一大特点,具体的内容就不写了,写下我认为封装的优点。访问控制:主要是用来设置给予用户的访问权限,使得用户只能使用开放权限的那一部分内容,而在权限之外的内容则不允许访问。实现细节的分离:实现细节可以随时更改,而无需调整用户级别的代码,降低了代码的耦合性。3.安全性上升:确保用户不会无意间破坏封装对象的状态,提升了安全性。...
2020-03-03 14:15:29 116
QWebSocket服务端代码(单线程)
2022-08-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人