c++理解
文章平均质量分 85
Jane.zhong
底层码农,仰望大佬。
展开
-
使用c++ winhttp实现post请求
winhttp是windows网络库,要测试自己写的post请求是否有效,首先得在postman上面建立一个可用的接口。我的如下。代码思路如下: 1、首先使用WinHttpCrackUrl拆解链接,后面会使用到拆解出来的信息。 2、再使用WinHttpOpen初始化 3、WinHttpSetTimeouts设置超时,这一步可有可无。 4、WinHttpConnect链接到目标,这里就需要使用拆解出来的信息了 5、WinHttpOpenRequest创...原创 2021-05-26 14:02:57 · 4865 阅读 · 0 评论 -
输入两个字符串,从第一字符串中删除第二个字符串中所有的字符
输入两个字符串,从第一字符串中删除第二个字符串中所有的字符样例样例 1:输入: str=”They are students”,sub=”aeiou”输出: ”Thy r stdnts”注意事项1≤len(str),len(sub)≤105首先拿到题,这里有一个不成熟的常规方案,就是挨着遍历两个字符串,找到相同的就删掉。但是时间复杂度太高,不优秀。如下:class Solution {public: /** * @param str: The ...原创 2020-10-27 17:13:47 · 1878 阅读 · 0 评论 -
windows窗口如何在软件已经运行了的情况下再次点击exe,该窗口置顶。
大部分软件都会有这样一个需求,软件在运行中,再次点击exe或者快捷方式让该软件窗口置顶。 最简单的方法就是调用windows api: HWND hWnd = ::FindWindow(NULL, _T("你的软件名称")); //通过窗口名称找到句柄 if(hWnd != NULL) ::SetForegroundWindow(hWnd); //置顶...原创 2020-08-26 18:39:10 · 1585 阅读 · 0 评论 -
qt窗口在windows系统下完美实现边框阴影
哈喽,好久不见!今天要分享的内容是qt编写的窗口在windows系统下如何完美实现窗口边框阴影。 qt虽然自带阴影类QGraphicsDropShadowEffect,但是它的原理是需要两层widget,上面一层显示窗口,下面一层作为阴影。但是,如果产品经理反复横跳,刚开始不要阴影,后来又提出需求了,怎么办?这时你的窗口布局什么的全都弄好了,又不好修改。如何做到想加就加,想不要就不要呢?请往下看。 我们这里是使用的windows api做的,所以做全平台的就不能帮助啦。 ...原创 2020-07-22 14:57:55 · 3628 阅读 · 6 评论 -
c++获取mac操作系统的版本号
最近项目需要判断mac系统是否低于10.15.但是一直不知道怎么获取,这次记录一下获取方式。 首先Qt当中有一个QSysInfo类,按道理是可以获取到系统版本的。但是我们看下面这个函数,它的返回值MacVersion是一个枚举,这个枚举最多能获取到10.12的系,显然不符合我们的要求。 所以,我们只有另辟蹊径,幸好在mac下有utsname,它可以获取到一个和系...原创 2020-03-18 17:48:32 · 2220 阅读 · 1 评论 -
设计模式之装饰模式
装饰模式(Decorator),动态的给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活。 结构图如下: 下面就使用一个具体的代码来举例子:我们假设要做一个手机,首先创建一个手机基类,实现手机的通用基本功能,Phone类就相当于Component;然后不同的手机类型实现其具体的功能,Nokia类和iPhone类就相当于ConcreteDecor...原创 2020-01-07 22:02:58 · 590 阅读 · 0 评论 -
设计模式之装饰模式
装饰模式(Decorator Pattern)允许向一个现有的对象添加新功能,同时又不改变其结构。这种类型的设计模式属于结构型模式(结构型模式设计,它关注类和对象的组合。继承这一概念被用来组合接口和定义组合对象获得新功能的方式。它包括以下几种具体的设计模式:适配器模式、桥接模式、过滤器模式、组合模式、装饰模式、外观模式、享元模式和代理模式。),它是作为现有的类的一个包装。这种模式创建了一个...原创 2019-08-14 13:40:14 · 597 阅读 · 0 评论 -
设计模式之简单工厂模式
简单来说,简单工厂模式就是使用一个单独的类(工厂)来控制其他类的实例化。 按照百度百科来说,简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。 ...原创 2019-06-17 21:55:52 · 844 阅读 · 0 评论 -
LeetCode第一题:两数之和
给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1] 我拿到这个题的第一反应是暴力遍历(容许我做一个悲伤的表情),其时间复杂度为O(n^2...原创 2018-09-17 14:48:13 · 343 阅读 · 0 评论 -
为何c++支持函数重载而c语言不支持
c和c++都属于编译型语言,也就是说着两种语言都需要经过编译、链接两个步骤才能够执行。如下图:那么问题就出在编译这个环节上。c语言在编译器编译的时候,在库中的名字为:_function而c++在编译器编译以后,在库中的名字是:_function_x也就是说,c语言如果遇到重名函数,链接的时候就会报错而c++会根据修饰规则进行选择,因为编译后的名字是不一样的。比如两个函数声明:void f(int ...原创 2018-07-07 21:42:00 · 605 阅读 · 0 评论 -
c++引用与指针的区别
1、引用是变量的别名,不会再开辟空间。而指针是一个变量,只不过这个变量储存的是一个地址,指向内存的一个存储单元。如:int a = 1; int *p = &a; //这里我们定义了一个整形变量a和一个指针变量p。该指针变量指向a的存储单元,即p的 //值是a的存储单元的地址 int a = 1; int &...原创 2018-07-04 17:39:14 · 372 阅读 · 0 评论