- 博客(7)
- 收藏
- 关注
原创 python中的生成器 -- yield的用法
跟着菜鸟教程初学python3,在"迭代器与生成器"一节,遇到个比较生疏的概念“生成器”,下面贴一下我的理解,如有不对之处,请多多指正: 所谓生成器,就是代码中使用到了yield关键字的函数 普通的函数,返回值类型根据return的类型而定, 而这样的函数,返回值类型固定为迭代器类型<class 'generator'> 与return相比,yield起到的效果是“记忆返回”: 像所有的迭代器一样,第一次调用迭代器对象的__next__()方法
2021-09-23 20:47:09
255
原创 改进qDebug(),使其有选择的进行输出
引入如下头文件即可:#ifndef MYQDEBUG_H/* * 说明: * 使用qdebug(int level=0),取代原来的qDebug() * 只有当level处于MY_MIN_DEBUG_LEVEL~MY_MAX_DEBUG_LEVEL之间时 * 才将日志信息输出 */#define MYQDEBUG_H#include <QDebug>#ifndef MY_MIN_DEBUG_LEVEL#define MY_MIN_DEBUG_LEVEL 0
2021-04-02 16:59:43
139
原创 qt自定义事件
1. 继承QEvent类,不用定义Q_OBJECT宏, 注意QEvent的构造函数有个枚举类型的QEvent::Type参数,表明事件类型, 对于自定义类型,这个枚举值应该在1000~65535之间, 推荐使用int QEvent::registerEventType()静态方法获取一个系统分配的事件类型, 该函数返回值会在1000~65535之间。 2. 调用静态方法QCoreApplic...
2021-03-29 16:13:32
225
原创 让Qt Release可以调试
我的环境: windows, mingw编译器方法:1. 关优化在pro文件中加入:QMAKE_CXXFLAGS_RELEASE -= -OQMAKE_CXXFLAGS_RELEASE -= -O1QMAKE_CXXFLAGS_RELEASE -= -O2QMAKE_CXXFLAGS_RELEASE -= -O3QMAKE_CXXFLAGS_RELEASE += -O0 # Release -O0QMAKE_CXXFLAGS_RELEASE += -gQMAKE.
2021-02-22 19:16:53
906
原创 c++正则表达式选择注释
用\/\*.+\*\/不行,会把/*...*/abc/*...*/这样的当做一次选择结果全部选中(贪婪模式)需用懒惰模式:\/\*.+?\*\/
2021-02-04 19:43:16
278
原创 C++虚函数表的两个知识点
虚函数表并不依赖对象而存在 虚函数表是在编译期就确定的 class A { public: virtual void func(){puts("this is virtual func");} }; typedef void (*pfunc_t)(); int main() { A * p = new A; pfunc_t p2 = (pfunc_t)(*(int*)(*(int*)p));...
2021-01-10 21:42:54
124
原创 区间求交集
题目:有两个有序的集合,集合的每个元素都是一段范围,求其交集,例如集合A:{[4,8],[9,13]} 和 集合B:{[6,12]}的交集为 {[6,8],[9,12]}c语言实现:#include <stdio.h>typedef struct sec_tag{ double start; double end;} sec;#define min(a,b) (((a)<(b))...
2018-03-16 16:12:30
1449
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人