自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Windows下的动态链接 之 DLL简介

Windows下的动态链接 DLL简介 符号导入导出表 DLL优化 C++与动态链接 DLL HELL 小结 1.DLL简介 DLL 即动态链接库(Dynamic-Link Library)的缩写,它相当于Linux下的共享对象。Window 系统大量采用了这种 DLL 机制,甚至包括 Win...

2020-03-11 19:04:15 33 0

原创 _beginthread, _beginthreadex

语法 uintptr_t _beginthread( // NATIVE CODE void( __cdecl *start_address )( void * ), unsigned stack_size, void *arglist ); uintptr_t _beginth...

2020-02-03 15:02:15 60 0

原创 编译和链接

简述 本文将从程序源代码到最终可执行文件的4个步骤:预编译、编译、汇编、链接。说明它们的作用和相互之间的联系,IDE集成开发工具和编译器默认的命令通常会将这些步骤合并成一步,使得我们通常很少关注这些步骤。整个编译过程分为两大步: 编译:把文本形式的源代码翻译成机器语言,并形成目标文件。 链接:把...

2019-12-12 15:31:46 30 0

原创 MFC中使用Qt

简述 最近在处理一个MFC中嵌入Qt窗口,所遇到的一些问题。进行总结,对一些问题进行分析理解,提炼出自己的看法。 qtwinmigrate GraphicsView框架事件处理 字符集,文件编码 qtwinmigate 由于MFC和QT的消息循环机制不同,Qt所实现的功能不能直接使用在MFC/...

2019-08-16 18:20:20 497 0

原创 Qt资料

QT中PRO文件写法的详细介绍 https://blog.csdn.net/adriano119/article/details/5878169

2019-07-26 11:41:22 55 0

原创 Java学习

探秘Java中的String、StringBuilder以及StringBuffer https://www.cnblogs.com/dolphin0520/p/3778589.html

2019-06-03 17:55:45 23 0

转载 探秘Java中String、StringBuilder以及StringBuffer

相信String这个类是Java中使用得最频繁的类之一,并且又是各大公司面试喜欢问到的地方,今天就来和大家一起学习一下String、StringBuilder和StringBuffer这几个类,分析它们的异同点以及了解各个类适用的场景。下面是本文的目录大纲:   一.你了解St...

2019-06-03 17:44:16 27 0

原创 MFC学习资料

深入浅出话VC++——MFC的本质 http://www.cnblogs.com/muouln/p/8036693.html

2019-05-24 15:10:06 59 0

原创 计算机网络

NAT(地址转换技术)详解 https://blog.csdn.net/gui951753/article/details/79593307

2019-03-29 13:49:39 78 0

原创 C++博客链接

C++隐式共享技术 Qt隐式共享技术 https://www.devbean.net/2013/01/qt-study-road-2-implicit-sharing/

2018-12-14 17:38:28 83 0

原创 Window博客链接

浅谈windows消息机制 https://www.cnblogs.com/gu-zhan/p/4053439.html

2018-12-14 15:41:43 53 0

原创 C++内存管理(二)未完待续

简述 前面一章大概分开的剖析一下,这章大概讲解一下,一般编程过程中背后的内存原理。现在先来看一张图。 在这里讲一下流程。 1.使用new和delete表达式请求分配内存。 2.编译器会解释表达式为(默认全局的operator new),如果是一个类重载了operator new 或者 ...

2018-06-19 10:58:57 67 0

原创 duilib禁止双击最大化

简述 用duilib开发了一个窗口,比如是登录窗口,那么这个窗口的窗口的双击最大化就毫无意义,甚至带来灾难,我们就要明确禁止这样的行为。 方法一 过滤WM_NCLBUTTONDBLCLK在HTCAPTION区的响应即可 LRESULT MyWindow::HandleMessage(U...

2018-06-18 17:48:18 137 0

转载 duilib无标题窗口拖动

简述 如题,因为在使用设置caption属性时会让整个窗口的可输入控件都不可触发焦点 解决办法 重载 LRESULT OnNcHitTest(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);这里有关于介绍这个函...

2018-06-18 14:01:57 437 0

原创 duilib中CEditUI理解

简述 因为最近去实习,公司中要求用duilib来进行界面绘制,在使用到CEditUI进行密码栏的设置时,因为CEditUI是没有默认信息的显示栏的。 如下图: 就是当没有焦点的时候会显示信息,这时候我才用的是给CEditUI设置文字,这种方法在对于普通的编辑框是没有问题的,当当用于对密码...

2018-06-13 20:21:21 1049 0

原创 C++内存分配理解一

内存分配 一般我们在使用C++来创建一个内置对象或者一个类的时候。一般都没有想过底层是怎样去实现的。本文是根据侯捷的视频进行的一部分总结,只考虑堆上的分配。 首先来看一张图 其实根据这张图我们可以去了解到C++基本内存分配规则了。在不考虑OS API的影响下,一切都是基于C语言当中的ma...

2018-06-02 11:39:54 2178 0

原创 LeetCode 删除链表的倒数第N个节点

删除链表的倒数第N个节点 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1->2-&...

2018-05-16 00:04:25 503 0

原创 LeetCode 删除链表的结点

删除链表的结点 请编写一个函数,使其可以删除某个链表中给定的(非末尾的)节点,您将只被给予要求被删除的节点。 比如:假设该链表为 1 -> 2 -> 3 -> 4 ,给定您的为该链表中值为 3 的第三个节点,那么在调用了您的函数之后,该链表则应变成 ...

2018-05-15 23:58:23 1072 0

原创 C++问题汇总

简述 本文主要针对一些C++比较偏门的一些问题总结,以下结果都是经过真机测试,环境为VS2015,32位。 初始化问题1 int *p1 = new int[10]; int *p2 = new int [10] (); 结果,不带括号的未任意值。带括号初始化为0。 原因: 在C+...

2018-05-14 17:45:03 88 0

原创 LeetCode最长公共前缀

最长公共前缀 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 “”。 示例 1: 输入: [“flower”,”flow”,”flight”] 输出: “fl” 示例 2: 输入: [“dog”,”racecar”,”car”] 输出: “” 解...

2018-05-11 16:51:44 309 0

原创 LeetCode实现strStr()

实现strStr() 实现 strStr() 函数。 给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。 示例 1: 输入: haystack = “hello...

2018-05-11 15:50:36 515 0

原创 LeetCode字符串转整数(atoi)

字符串转整数(atoi) 实现 atoi,将字符串转为整数。 在找到第一个非空字符之前,需要移除掉字符串中的空格字符。如果第一个非空字符是正号或负号,选取该符号,并将其与后面尽可能多的连续的数字组合起来,这部分字符即为整数的值。如果第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,...

2018-05-11 15:16:15 112 0

原创 LeetCode 验证回文字符串

验证回文字符串 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。 说明:本题中,我们将空字符串定义为有效的回文串。 示例 1: 输入: “A man, a plan, a canal: Panama” 输出: true 示例 2: 输入: “race ...

2018-05-11 15:06:34 177 0

原创 LeetCode有效的字母异位词

有效的字母异位词 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。 示例 1: 输入: s = “anagram”, t = “nagaram” 输出: true 示例 2: 输入: s = “rat”, t = “car” 输出: false ...

2018-05-11 14:42:34 295 0

原创 LeetCode字符串中的第一个唯一字符

字符串中的第一个唯一字符 给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。 案例: s = “leetcode” 返回 0. s = “loveleetcode”, 返回 2. 注意事项:您可以假定该字符串只包含小写字母。 解题思路: 遍历字...

2018-05-11 14:30:43 442 0

原创 LeetCode颠倒整数

给定一个 32 位有符号整数,将整数中的数字进行反转。 示例 1: 输入: 123 输出: 321 示例 2: 输入: -123 输出: -321 示例 3: 输入: 120 输出: 21 注意: 假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231, 2...

2018-05-11 14:19:08 74 0

原创 LeetCode 反转字符串

反转字符串 请编写一个函数,其功能是将输入的字符串反转过来。 示例: 输入:s = “hello” 返回:”olleh” 解法一: 使用swap函数 string reverseString(string s) { int length=s.length(); ...

2018-05-11 14:03:53 321 0

原创 LeetCode合并两个有序数组

合并两个有序数组 给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。 说明: 初始化 nums1 和 nums2 的元素数量分别为 m 和 n。 你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)...

2018-05-11 09:05:37 670 0

原创 LeetCode旋转图像

旋转图像给定一个 n × n 的二维矩阵表示一个图像。将图像顺时针旋转 90 度。说明:你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。示例 1:给定 matrix = [ [1,2,3], [4,5,6], [7,8,9] ],...

2018-04-25 00:18:09 254 0

原创 LeetCode有效的数独

有效的数独判断一个 9x9 的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。1.数字 1-9 在每一行只能出现一次。 2.数字 1-9 在每一列只能出现一次。 3.数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。上图是一个部分填充的有效的数独。数独部分空格内...

2018-04-25 00:15:48 1290 0

原创 LeetCode两数之和

两数之和给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1]...

2018-04-24 23:55:25 44 0

原创 LeetCode移动零

移动零给定一个数组 nums, 编写一个函数将所有 0 移动到它的末尾,同时保持非零元素的相对顺序。例如, 定义 nums = [0, 1, 0, 3, 12],调用函数之后, nums 应为 [1, 3, 12, 0, 0]。注意事项:1.必须在原数组上操作,不要为一个新数组分配额外空间。 2...

2018-04-24 23:49:59 134 0

原创 LeetCode加一

加一给定一个非负整数组成的非空数组,在该数的基础上加一,返回一个新的数组。最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例 1:输入: [1,2,3] 输出: [1,2,4] 解释: 输入数组表示数字 123。 示例 2:输...

2018-04-24 23:45:12 150 0

原创 LeetCode两个数组的交集 II

两个数组的交集 II给定两个数组,写一个方法来计算它们的交集。例如: 给定 nums1 = [1, 2, 2, 1], nums2 = [2, 2], 返回 [2, 2].注意:输出结果中每个元素出现的次数,应与元素在两个数组中出现的次数一致。 我们可以不考虑输出结果的顺序。 跟进:如...

2018-04-24 23:38:35 171 0

原创 LeetCode只出现一次的数字

只出现一次的数字给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1] 输出: 1 示例 2:输入: [4,1,2,1,2] 输出: 4解法一...

2018-04-24 23:31:19 262 0

原创 LeetCode存在重复

存在重复给定一个整数数组,判断是否存在重复元素。如果任何值在数组中出现至少两次,函数应该返回 true。如果每个元素都不相同,则返回 false。解法一: 效率不高bool containsDuplicate(vector<int>& nums) { if(n...

2018-04-24 23:23:37 212 0

原创 LeetCode旋转数组

旋转数组将包含 n 个元素的数组向右旋转 k 步。例如,如果 n = 7 , k = 3,给定数组 [1,2,3,4,5,6,7] ,向右旋转后的结果为 [5,6,7,1,2,3,4]。注意:尽可能找到更多的解决方案,这里最少有三种不同的方法解决这个问题。[显示提示]提示:要求空间复杂度为...

2018-04-24 23:18:54 90 0

原创 QScrollArea的使用问题

简述最近在使用QScrollArea解决相关问题的时候,由于架构问题。出现了一些问题,导致继承QScrollArea的子类无法显示导航栏。问题的来源是博主把要想放在QScrollArea中的控件,直接放在了继承的子类中了。如下图 ,解决的办法是别把自己继承的子类,直接当成一个控件使用。要给它...

2018-04-22 23:44:10 132 0

原创 Qt自定义右键菜单的方法

简述在使用Qt的时候,我们多少离不开菜单的时候,下面我们介绍两种自定义菜单的方法。重写QWidget::contextMenuEvent(QContextMenuEvent *)方法在使用这个方法的时候一定要保证 this->setContextMenuPolicy(Qt::Default...

2018-04-22 23:37:05 307 0

原创 QLabel显示图片

简述我们在使用Qt的时候,经常会使用到QLabel,但当有些时候我们希望可以显示一些静态显示图片。这个时候我们可能会用到自定义的QLabel。 下面给出几个可行的方案。 使用setPixmap(const QPixmap &) 使用样式表 重写事件下面来说一下,他们有优缺点,setPix...

2018-04-08 17:27:32 910 0

提示
确定要删除当前文章?
取消 删除