- 博客(80)
- 资源 (5)
- 收藏
- 关注
原创 C++ 11原子变量
原子作为长期最小的单位,在这里被定义为不可分割的最小操作,原子性也别定义为不可再分的操作,在C\C++ 中由于程序执行的非常的快,指令可能出现乱序执行的情况(不能保证指令执行的循序和编写程序循序的一致),有编译器的优化,有执行上的优化,总之是为了让程序执行更快导致的特性,这在单线程中几乎不会出现什么问题可以让程序飞快的执行,但是到了多线程的时代就会有问题,实际上就是线程同步上的问题,于是C++11(Java 在2004 年的java5就支持了C++晚了非常久)增加原子变量来实现原子操作。
2025-02-14 18:29:03
1044
原创 C++11 多线程 1
调用该方法以后就会放弃CPU资源 等待下一轮的CPU资源,主要作用是降低当前函数体的运行速率,放弃当前CPU资源让别的线程去使用CPU。将线程切换到就绪态,放开CPU资源,传递的参数是一个duration对象。休眠一个指定的时间节点。
2025-02-12 13:50:08
252
原创 C++11 时间日期库使用
...使用中需要传入两个参数_Rep: 周期数量 表示需要经历多少个周期时间_Period: 周期时间 表示一个周期时间为多长..._Num 分子_Den 分母单位是秒 按照默认 _Num = 1 _Den = 1 那就是一秒如果是表示一毫秒 那就将_Den = 1000 这样就表示1毫秒 其他形式同理。
2025-02-11 16:09:39
706
原创 C++11 常用特性总结2
什么是左右值:一个表达式–> 左值 = 右值也就是在表达式左边的称之为左值在右边的称之为右值C++11 中新增了一个一个类型 && 右值引用 例如 int && 、double && 这衍生出来一些看上去很神奇的效果减少拷贝次数当对某个对象进行赋值操作的时候实际上创建流程是 先构造一个对应的对象 之后使用拷贝构造函数对构造的函数进行拷贝从而实现赋值操作扩展内容这个代码正常应该打印两次构造函数的内容,但是只会打印一次,因为C++ 11 自动对代码进行了优化使用了右值引用 理解不一定正确在模版中 T
2025-01-23 09:41:39
802
原创 系统架构师备考记忆不太清楚的点-信息系统-需求分析
活动图 是一种特殊的状态图,活动图描述一个操作中要进行的各项活动那个的执行流程,同时也常用来描述一个操作中要进行的各项活动的执行流程。分别为函数过程(具体操作)---->程序过程(函数调用)--->程序段过程-->(功能实现)-->业务功能实现(领域级)(个人理解)循序图:是一种交互图强调对象之间消息发送的循序,同时显示对象之间的交互。结构级--包含程序分量之间相互依赖的关系,例如调用图、结构图、程序和数据结构。通信图:强调对象之间的存在的消息收发关系,和循序图的区别是不强调时间循序。
2024-10-09 17:01:39
1067
4
原创 Linux qt 无法搜索到usb摄像头
在Ubuntu(香橙派)中使用/usr/local/bin 里面的install_qt.sh 安装的qt 默认是没有安装 的qtmultimedia5-dev。可以正常编译程序但是不能用QCameraInfo::availableCameras()搜索到usb相机原因就是没有安装插件。使用apt-get 命令下载插件就可以正常使用。使用 apt-get 安装以后。
2024-06-17 09:33:38
558
2
原创 QTablewidge 标题左侧qss效果
设置表头效果 使用 QHeaderView::section但是左上角这一块没有作用到 使用下面qss解决QTableCornerButton::section{ background-color: #60669B;}
2022-04-26 13:14:58
519
原创 Qt label设置图片窗口以后拖动只能放大不能缩小解决
编写demo的时候发现用label显示图片然后重写 resizeEvent 只能放大不能缩小设置方式如下:void MainWindow::resizeEvent(QResizeEvent *event){// this->setMinimumSize(0,0); QPixmap pixmap1 = pixmap.scaled(ui->label->width(),ui->label->height(),Qt::IgnoreAspectRatio, Qt
2021-11-12 14:34:58
2712
3
原创 力扣 1996 游戏中弱角色的数量
学习到 哔哩哔哩黄歪歪的一种写法首先学习到的就是 std::sort() 如果直接给二维数组排序 则默认按照第一个来进行操作。class Solution {public: int numberOfWeakCharacters(vector<vector<int>>& nums) { sort(nums.begin(),nums.end()); reverse(nums.begin(),nums.end()); .
2021-09-07 11:04:29
242
原创 Gitee 在缩减仓库体积时候出现的异常
Gitee 在缩减仓库体积时候出现的异常使用命令获取大文件列表git rev-list --objects --all | grep -E `git verify-pack -v .git/objects/pack/*出现错误fatal: Cannot open existing pack file ‘.git/objects/pack/*.idx’检查这个文件夹确实没有发现这个文件使用命令git repack -d -l之后生成了这个文件 之后成功获取到了大文件列表这里我的大
2021-08-19 09:23:12
1103
原创 C++内存管理(1)
C++ 内存管理C++内存分配 一般来说C++ 操作内存用的是 new/ delete 实际最后最用调用的是malloc /free 调用层次如下 .start(this);实例化这个单例然后运行Android程序第四步点击添加数据库 选择 Android SQLite然后就可以看到...
2021-04-17 08:56:28
384
原创 452. 用最少数量的箭引爆气球
看到这个题的时候 就想到树状数组,首先 认为没有一个点有相交 这样结果就是 points 的size然后 统计区间中最大的值 每次减去这个值 最后就可以得到结果使用这个思路 最开始的的想法是没有问题的 第二步出错了,统计区间最大值的方式是错误的代码如下:#include <bits/stdc++.h>using namespace std;int maxn = 1e4 +5;class Solution {public: int findMinA...
2021-03-29 10:22:39
114
转载 Qt 自定义tablewidget(背景色,标题箭头)
/********QTableWidget*********/QHeaderView{ /*设置标题(包括垂直+水平的)*/ font-size: 19px; /*11榜*/ border: 1px solid rgb(255, 255, 255); /* border-bottom: 2px solid rgb(35, 100, 224); 下边框深蓝色*/ background: rgb(100, 188, 238...
2021-03-04 08:44:11
10390
2
原创 C++11多线程
这里总结一下C++11多线程的基本使用和技巧,也是个人对C++11中多线程的一些理解。需要掌握的预备知识std::move() 它唯一的功能是将一个左值强制转化为右值引用,继而可以通过右值引用使用该值std::ref() 传引用, 有些api的传递引用实际上是拷贝一个副本使用这个函数则可以保证一定是引用的目录C++11线程创建的方式1.函数传递方式2.lambda表达式3.重载运算符4.成员函数做为线程入口等待结束函数详解1.使用deta...
2021-02-21 20:44:37
11101
7
原创 设计模式学习记录
设计模式学习笔记面向对象基本设计原则依赖导致原则(DIP)高层模块不应该依赖于底层模块,两者都应该依赖于抽象如: 界面展示不应该依赖于内部实现类,应该依赖于整体抽象的抽象类抽象不应该依赖于实现细节,实现细节应该依赖于抽象抽象依赖于实现细节就会稳定容易出问题,拿出稳定部分抽象出来,总之要实现隔离变化。总的来说,底层模块的变更会直接影响到高层模块,如果每次改动的底层模块会让高层模块直接变的不稳定,所以来说需要尽量 的隔离变化,让高层模块不依赖于底层模块,这样复用高层模块的时候很简单也
2020-12-07 13:57:26
95
原创 vmware虚拟机共享文件夹显示不出来的解决办法
1、内核4.0以前的共享方法:mount -t vmhgfs .host:/ /mnt/hgfs2、内核4.0之后的共享方法vmhgfs-fuse .host:/ /mnt/hgfs -o subtype=vmhgfs-fuse,allow_other
2020-09-23 14:36:26
630
原创 94. 二叉树的中序遍历
原题连接首先知道什么是中序遍历中序遍历就是中间访问根节点即:访问左节点()访问根节点()访问右节点()对于非叶子节点(没有左右孩子节点的节点)每个点都可以说是一个根节点所以这里的访问根节点就可以理解是输出当前节点的值实现的方法有两种,维护一个栈1.添加根节点2.如果左边节点存在,添加左边的节点,不存在输出当前节点的值,然后添加右边的3.如果右侧节点不存在则输出栈顶值(上一个的左边)存在则执行第二步这样就可以解决这个问题下面是实现代码class
2020-09-14 17:22:04
373
原创 40. 组合总和 II
https://leetcode-cn.com/problems/combination-sum-ii/这一题就是很普通的递归回溯问题在于如何去重实际上只要每一层只能选择一次那么就不会有重复的(使用了这个数进行过往下一层递归以后都不能用这个数再去和下一层递归了)也就是排序然后判断一下就行class Solution {public: vector<vector<int>>ans; vector<int >temp; s...
2020-09-10 09:10:09
120
原创 347. 前 K 个高频元素
看到这个题首线就想到 将所有的数放在map里面问题在于怎么拿出来,想了很久都没想到,最后看了别人的,才知道用优先队列的方式复习一下优先队列的定义方式 :priority_queue<Type, Container, Functional>Type 就是数据类型,Container 就是容器类型(Container必须是用数组实现的容器,比如vector,deque等等,但不能用 list。STL里面默认用的是vector),Functional 就是比较的方式,当需要用自定义的数..
2020-09-07 09:56:01
173
原创 Qt 实现虚拟键盘
利用重写LineEdit 然后监听鼠标点击事件,根据LineEdit 的选择控制是数字键盘还是英文数字混合键盘。实现方式非常的简单只需要遍历所有的按键然后绑定槽函数void keyboardNumDialog::init(){// this->setWindowFlags(Qt::FramelessWindowHint);// this->setWindowFlags(Qt::FramelessWindowHint | Qt::Dial...
2020-08-27 11:12:08
6849
原创 491. 递增子序列
题目链接https://leetcode-cn.com/problems/increasing-subsequences/又是没做出每日一题的一天这题总体来说是枚举所有子串,问题点在去重上贴出一个别人的代码class Solution {public: vector<int>t; void dfs(vector<vector<int>>&a,vector<int>&nums,int i) {..
2020-08-25 18:06:20
163
原创 vmware虚拟机共享文件夹显示不出来的解决办法
1、内核4.0以前的共享方法:mount -t vmhgfs .host:/ /mnt/hgfs2、内核4.0之后的共享方法vmhgfs-fuse .host:/ /mnt/hgfs -o subtype=vmhgfs-fuse,allow_other记录一下解决虚拟机文件不能查看的方法,比常规的重新安装工具好多太多...
2020-08-20 23:02:50
2411
原创 133. 克隆图
题目链接:https://leetcode-cn.com/problems/clone-graph/这题主要就是考察对领接表的理解难度其实不大,这里主要是学习到了两个STL一个是unordered_map相对于map 这个主要是内部是哈希表实现查找速度快于map。emplace_back 相对于push_back只会直接构造一次对象不会创建临时对象class Solution {public: Node* cloneGraph(Node* node).
2020-08-12 18:40:20
192
原创 415. 字符串相加
题目链接:https://leetcode-cn.com/problems/add-strings/这题非常的简单,只需要考虑三个问题长度一样的加分 长度不一样的加分 进位我是这样完成的,写的比较长这里主要是提供看简洁的写法第二份代码,写的非常优美。#include <bits/stdc++.h>using namespace std;class Solution {public: string addStrings(string num1, strin
2020-08-03 09:41:36
122
原创 343. 整数拆分
题目链接https://leetcode-cn.com/problems/integer-break/首先根据题目很容易的到的一个点是 要使乘积最大能选择的 数字只能是1 2 3 ,之后选择的任何一个数都可以拆分成这三个的乘积所以只要选这三个就可以。 然后如何...
2020-07-30 10:04:02
160
原创 WinCe 中程序异常报错 汇总
Exception 'Raised Exception' (-1): 数组越界Exception 'Data Abort' (4): 栈出问题了/空指针/访问的数据块无效了(如内存已经回收无效了)Exception 'Prefetch Abort' (3): 空指针...
2020-03-31 08:21:57
332
原创 Qt 常用控件和属性
SpinBox 数值显示框可显示double类型的qdoubleSpinBoxDial表盘式数值输入组件Qslider 滑动条有垂直水平两种ProgressBarQLCDNumber可以通过函数digitCount()设置显示的数的位数smallDecimalPoint() 是否有小数点 小数点也算一位mode() 显示的进...
2020-02-19 18:27:52
2574
原创 Qt常用QString API
QString 将字符串转为数值int 就是直接toInt 其他的也是这样,默认基数为10(设置为其他基数则可实现进制转换)将数值转换为字符串QString::number(),可以用这个函数实现保留小数等操作 (QString::number(total,'f',2))还有几个函数同样可以QString.asprintf("%.2f",total)QStri...
2020-02-19 16:53:33
381
原创 VS for Qt 解决乱码问题
首先就是遇到一个问题 有中文的地方在编译的时候会提示常亮中有换行符必须要另存为 带BOM格式的UTF-8才能正常编译我用的是notepad++转换的这样可以解决编译问题但是会出现问题中文显示乱码。这里参考了https://blog.youkuaiyun.com/10km/article/details/80203286这个博客的方法在属性页面配置附加选项添加一个/utf-8在下...
2019-11-11 14:10:23
356
1
原创 VC 播放声音
#include <stdio.h>#include <windows.h>/*SND_APPLICATION用应用程序指定的关联来播放声音。SND_ALIASpszSound参数指定了注册表或WIN.INI中的系统事件的别名。SND_ALIAS_IDpszSound参数指定了预定义的声音标识符。SND_ASYNC用异步方式播放声音,PlaySo...
2019-10-28 09:36:56
401
转载 QtCreator使用技巧
文章转载自涛哥的博客很实用留下以后用QtCreator折叠全部代码折叠全部代码,支持C++和Qml。操作方式为:光标焦点放在代码文本中,之后 菜单栏: 编辑->Advanced->Toggle Fold All这个功能没有快捷键QtCreator属性生成经常需要给自定义的QObject类写一些属性,QtCreator是可以自动生成get、set函数以及cha...
2019-10-22 11:10:39
1826
2
原创 VC (WinCE 消息队列)
WinCE 下提供了消息队列机制首先是创建消息队列的方法创建消息队列需要传入配置项 使用MSGQUEUEOPTIONS 结构体来进行配置 MSGQUEUEOPTIONS option; option.dwSize = sizeof(MSGQUEUEOPTIONS);//结构体大小 option.dwMaxMessages = 100; //最大消息数 o...
2019-10-22 10:58:20
329
原创 VC 信号量
使用函数CreateEvent创建一个事件HANDLE CreateEvent( LPSECURITY_ATTRIBUTES lpEventAttributes, // SD 一般为空 BOOL bManualReset, // reset t...
2019-10-21 09:11:24
1091
原创 VC 下临界区变量(互斥锁)
VC 下保证原子性的操作这里临界区控制结构体操作都是基于这个结构体的typedef struct CRITICAL_SECTION { unsigned int LockCount; /* Nesting count on critical section */ HANDLE OwnerThread; /* Handle of own...
2019-10-17 17:16:43
572
Qt5实现的虚拟键盘通过重写LineEdit 实现
2020-08-27
ESP8266串口WIFI 无线模块 WIFI远距离无线模块 穿墙王.zip
2019-11-21
基于C语言的五子棋(带人机对战)
2018-06-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人