gigi怪
码龄7年
求更新 关注
提问 私信
  • 博客:94,348
    社区:261
    94,609
    总访问量
  • 86
    原创
  • 19
    粉丝
  • 45
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
加入CSDN时间: 2019-08-02
博客简介:

weixin_45482816的博客

查看详细资料
个人成就
  • 获得51次点赞
  • 内容获得29次评论
  • 获得204次收藏
  • 代码片获得243次分享
  • 博客总排名521,407名
创作历程
  • 36篇
    2021年
  • 51篇
    2020年
成就勋章
TA的专栏
  • Qt
    19篇
  • 平面几何图形
    1篇
  • opencascade
    2篇
  • c++
    13篇
  • Visual Studio
    18篇
  • 算法及数据结构
    20篇
  • opencv
    1篇
  • 项目小结
    6篇
  • C
    3篇
  • 操作系统
    2篇
  • 数据库
    3篇

TA关注的专栏 0

TA关注的收藏夹 0

TA关注的社区 4

TA参与的活动 0

创作活动更多

【多重好礼】鸿蒙心迹 · 开发录原创征稿活动

鸿蒙开发者的实战经验,值得被记录。从踩坑排查到项目复盘,从工具脚本到学习笔记,每一段真实的开发经历,都是社区最宝贵的技术资产。「鸿蒙心迹 · 开发录」正式启航,不限主题、随时可写,只要是鸿蒙开发相关的真实经验都欢迎投稿。 本活动为 [HarmonyOS 7.0 创新内容共创季](https://builderx.csdn.net/activity-site/harmonyos/activity2026)双轨征文之一,与[「共创季 · 稿事节」](https://harmonyosdev.csdn.net/6a97f0de2b83d06f0ecadec5.html)深度征文互补——「稿事节」写深度技术长文,「开发录」写日常开发实战笔记。 「开发录」每月一期,12月截止,本季共三期,投稿即有机会获得京东卡、CSDN博客流量券、亿万Token、社区定制周边好礼!

126人参与 去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

Qt:利用qApp进行插件化模块通信

由于QCoreApplication全局单例,因此可以利用其作为媒介进行模块间通信。#define qApp (static_cast<QApplication *>(QCoreApplication::instance()))例如现在有一个主框架Main,包含了两个界面Widget,现在需要当点击WidgetA中的某个控件时,框架会切换到widgetB界面且进行相关操作。1.WidgetA利用setProperty设置相关要传输的数据,并调用sendEvent发送事件。 int
原创
博文更新于 2021.10.13 ·
1262 阅读 ·
0 点赞 ·
1 评论 ·
9 收藏

Qt:多个信号连接同一个槽函数,获取信号发送对象

使用sender()获取信号发出对象,再用对象名判断对象,做相应处理 QObject* lSender = sender(); if (lSender == 0) return; if (lSender->objectName() == "str1") {} else if (lSender->objectName() == "str2") {} else if (lSender->objectName() == "str3") {}...
原创
博文更新于 2021.10.08 ·
999 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

Clipper:布尔运算类型

一.ClipperClipper支持四种裁剪类型,分别是交集、并集、非/差和异或。enum ClipType { ctIntersection, ctUnion, ctDifference, ctXor }; 假如现在把布尔操作比作弄饺子皮,一整大块面皮就是主体多边形,而一个小杯子就是裁剪多边形:1.交集intersection当我们用杯子压在面皮上用力往下压,就相当于把面皮裁剪了,得到的一小块杯口形状的面皮(裁剪结果),就相当于intersection的结果,即两多边形的共同区域。2.并集
原创
博文更新于 2021.08.30 ·
2081 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

opencascade:布尔操作后的缝合线消除

opencascade中,我们可以运用BRepAlgo_Fuse来进行两个几何模型的融合操作。但实际使用时,比如下面例子中,先在大长方体上面挖一个小长方体,然后再将小长方体直接通过BRepAlgo_Fuse重新融合回去:从上图可以发现,融合之后,虽然原来的槽被填补了,可是出现了缝合线。为了消除缝合线,我们需要用到工具类ShapeUpgrade_UnifySameDomain,该工具用于统一一个几何模型上的面和边。应该可以理解为,同一模型,同一面上的边,统一用边界的边来表示,其余的去掉。 TopoD
原创
博文更新于 2021.08.18 ·
2206 阅读 ·
0 点赞 ·
0 评论 ·
12 收藏

opencascade:修改Dimension标注的样式

在使用opencascade中的标注类AIS_Dimension时,想着修改标注的颜色,文字的样式大小等,一开始使用的是其基类AIS_InteractiveObject中的SetColor,但是发现没有作用。 Handle(AIS_DiameterDimension) DiameterDimension = new AIS_DiameterDimension(coneButtom); DiameterDimension->SetColor(Quantity_NOC_BLUE1);正确的做法需要
原创
博文更新于 2021.08.17 ·
1552 阅读 ·
2 点赞 ·
0 评论 ·
10 收藏

解决:应用程序无法正常启动0xc000007b

当我们都链接好相应的dll时候,却还是无法打开应用,并爆出了这样的错误。原因可能是库的版本问题。这里推荐一个小工具depends,它可以查找一个应用依赖的所有dll,并提供相应信息。查找发现,原来是这几个库拷错了,应用是x64,但是库的版本确实x86。重新拷贝正确的库便可解决上述问题。...
原创
博文更新于 2021.07.23 ·
405 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Qt:QPluginLoader与插件式开发

一个工程中,不同的界面就可能由不同的模块进行管理开发,然后生成相应的dll。一般状况下,直接加载.dll创建对象的话,当这个.dll丢失的时候,程序就会直接报错,无法运行下去。但当我们利用插件式开发,结合QPluginLoader,就可以做到即使.dll丢失,主程序也不会崩溃,只会丢失相应的功能。1.首先自定义插件抽象基类函数根据需要自行添加。class IPlugin : public QObject{public: virtual ~IPlugin() {}public: virtu
原创
博文更新于 2021.07.19 ·
1541 阅读 ·
1 点赞 ·
0 评论 ·
7 收藏

未加载Qt5Core.pdb

发布版本的时候,使用了windeployqt来生成相应的库,但是不小心直接在C:\Qt\Qt5.13.2\5.13.2\msvc2017_64\bin中生成了,覆盖掉了Qt5Core.dll,导致出现无法调试的结果。
原创
博文更新于 2021.07.18 ·
2831 阅读 ·
0 点赞 ·
5 评论 ·
2 收藏

Qt:关于QAxWidget的使用注意

1.QtDesigner中,提供了接口,可自定义插件,需继承这个抽象类QDesignerCustomWidgetInterface,实现相应的接口。{public: virtual ~QDesignerCustomWidgetInterface() {} virtual QString name() const = 0; //名字virtual QString group() const = 0; //即在哪个组显示virtual QString toolTip() const
原创
博文更新于 2021.07.17 ·
4154 阅读 ·
0 点赞 ·
1 评论 ·
10 收藏

Qt:为QLabel增设点击响应操作

QLabel是没有clicked()信号的,所以要创建选中QLabel的响应操作,得做一些处理。1.为目标对象QLabel添加事件过滤器(EventFilter)void QObject::installEventFilter(QObject *filterObj)label->installEventFilter(this);事件过滤器是接收发送到此对象的所有事件的对象。即上述代码中即发送到label的所有事件都会被this表示的对象所接收。筛选器可以停止事件或将其转发到此对象。事件过滤
原创
博文更新于 2021.07.16 ·
1912 阅读 ·
2 点赞 ·
0 评论 ·
1 收藏

C++:关于匿名函数

1.匿名函数的作用相较于普通非匿名函数,匿名函数无需进行另外的声明和定义,仅当调用该匿名时,函数体才会创建,且调用完毕后会立即释放资源。因此匿名函数会更加节省空间,常用于像std::sort这样可以重写排序方式的函数。2.匿名函数的例子 //例子1: auto testReturn = [](int a1, int a2) {return a1>a2 }; bool flag = testReturn(23, 21); cout<<flag<<endl; //例
原创
博文更新于 2021.07.14 ·
1188 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Qt:使用QUiLoader动态加载.ui

通常我们创建一个.ui文件,通过Qt Designer用拖拽的方式布置界面时,会需要用到uic工具吧.ui文件转化成相应的c++代码。而动态加载.ui文件是在程序运行过程中用 QUiLoader动态加载.ui文件,达到相同目的,而无需通过上述的uic进行转换。其适用于:(1)UI文件是程序运行中途创建生成的,在同程序的其他地方调用,没法进行uic。(2)前端设计和功能实现相分离,前端设计人员和功能实现人员只要事前沟通好相关组件的名称等,就可以进行独立开发,能提高效率。需要用到头文件.
原创
博文更新于 2021.07.03 ·
2812 阅读 ·
1 点赞 ·
1 评论 ·
8 收藏

vs:关于工程链接中的“引用”

vs中,除了在属性->链接器中添加附加依赖项来链接dll之外,还可以直接在工程的引用中添加相应的工程,vs会自行加载。在这里勾选需要用到的,其他项目生成的库。
原创
博文更新于 2021.06.16 ·
348 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Visual Studio 2015 一些工程配置问题

1.C/C+±常规-附加包含目录点开编辑,里面包含的是一些三方库的include,即相关的头文件,例如项目中要使用Qt库,需要对用到的模块进行相关的配置。2.链接器-常规-附加库目录当使用一些三方库时,我们需要把一些静态库的路径配上去,以便于链接器在链接时找到相应的文件。3.链接器-输入-附加依赖项上述的附加库目录只是查找目录,类似环境变量 PATH;但是具体用哪一个lib时则需要指明,如果不在附加依赖项里填上,就需要在代码里用这样的语句代替。...
原创
博文更新于 2021.06.16 ·
280 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Qt5Widgetsd.dll和Qt5Widgets.dll区别

Qt5Widgetsd.dll是Debug版本所使用的库,而Qt5Widgets.dll是Release版本的库。Debug一般是公司内部调试所用,版本的发行一般是Release版本,所以不要发错了,不然就会出现找不到相应dll的错误。
原创
博文更新于 2021.06.10 ·
2354 阅读 ·
1 点赞 ·
1 评论 ·
2 收藏

Qt:QXmlStreamReader,QXmlStreamWriter读写xml文件

1.读xml QFile file(QCoreApplication::applicationDirPath() + "/config/Setting.xml"); if (file.open(QIODevice::ReadOnly | QIODevice::Text)) { QXmlStreamReader reader(&file); QString name = ""; int col = 0; bool select = false; while (!reader.
原创
博文更新于 2021.06.09 ·
1077 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

Qt:获取CPU序号,硬盘序号

读取CPU序号及硬盘序号等需要用到QProcess。 p.start("wmic CPU get ProcessorID"); //获取cpu序号 p.waitForStarted(); p.waitForFinished(); CpuId = QString::fromLocal8Bit(p.readAllStandardOutput()); CpuId = CpuId.remove("ProcessorId").trimmed(); //除去前缀 p.start("wmic diskd
原创
博文更新于 2021.06.09 ·
2013 阅读 ·
0 点赞 ·
0 评论 ·
5 收藏

Qt:操作系统注册表

Qt中的QSettings类用于处理对系统注册表的操作。1.写入QString WTime,WKey,WVersion;QSettings setting("HKEY_CURRENT_USER\\SOFTWARE\\Test", QSettings::NativeFormat); //打开注册表setting.setValue("time", WTime);setting.setValue("password", WKey);setting.setValue("version", WVersio
原创
博文更新于 2021.06.09 ·
3263 阅读 ·
0 点赞 ·
1 评论 ·
1 收藏

二叉树相关算法整理(跟新中)

求二叉树的叶子节点数输入1)头结点//递归求叶子节点数int findleafnode(node* head){ if(head==NULL) return 0; if(head->left==NULL&&head->right==NULL) return 1; return findleafnode(head->left)+findleafnode(head->right);}//非递归.
原创
博文更新于 2021.05.08 ·
578 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

error: ‘>>‘ should be ‘> >‘ within a nested template argument list

在镶嵌模板中,后一个>需要一个空格隔开vector<vector<Pair>> coutours;//修改成如下即可vector<vector<Pair> > coutours;
原创
博文更新于 2021.03.12 ·
406 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多