自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (5)
  • 收藏
  • 关注

原创 测试http图片下载

2024-02-20 19:20:37 115

转载 初识XML

xml入门

2023-02-22 10:25:11 136

转载 前端“三件套“——HTML,CSS,Javascript(一)

前端入门html

2023-02-02 16:03:03 214

原创 C/C++ 实现的websocket客户端和服务器

领导安排实现一个websocket客户端做测试用,因为工位电脑上的环境只有vs2019和boost1.78.0,所以只能基于boost.beast开发。擅长Qt并且有Qt开发环境的用QWebsocket更方便。官方的example中仅仅输出到控制台,而且不支持中文,这里我加入了ansi到utf8的转换,使用utf8就能正常解析中文。注:项目需包含boost库客户端代码:#include<time.h> #include <boost/beast/core.hp

2022-03-16 16:34:17 9236

原创 静态数组和动态数组的区别

1. 静态数组在内存中位于栈区,是在定义时就已经在栈上分配了固定大小,在运行时这个大小不能改变,如:int a[10]; 动态数组是malloc或者new出来的,位于内存的堆区,它的大小是在运行时给定,并且可以改变其,如: int *a; a = new int[10];2. 静态数组的大小是在编译期间就确定,并且分配的,其内存在使用结束后由计算机自动释放,效率高;动态数组是在程序运行时,由程序员根据实际需要从堆内存中动态申请的,使用结束后由程序员进行释放,效率低。3. ...

2021-08-10 14:55:59 11012

原创 gcc: error trying to exec ‘cc1plus‘: execvp: No such file or directory

环境为ubantu 14。gcc编译 .c 文件时正常,编译 .cpp 文件时报错。原因:解决方法:

2021-06-15 14:35:52 821

原创 使用XShell连接linux虚拟机

在VMWare中操作虚拟机非常不方便,需要频繁将鼠标切入切出。我们可以通过XShell连接到虚拟机,然后在XShell中做操作会比较方便。

2021-06-11 15:29:35 3707 2

原创 linux下编译运行C程序(入门)

笔者现在还没有linux基础,听过vim,但还不会用,都是自己在windows上写完代码,把文件拷贝到linux系统上再去编译的。。。将windows上的文件拷贝到linux上的命令:

2021-06-11 15:25:52 109

原创 Vmware虚拟机创建一个linux(Ubuntu)系统

准备 好 Vmware虚拟机16版本 + ubantu-14.04-server-amd64.iso系统镜像文件。第一步:先傻瓜式安装好VMware-workstation-full-16.0.0-16894299.exe

2021-06-11 13:37:02 404 2

原创 父类指针可以指向子类对象

结论:父类指针可以指向子类对象,但是只能访问父类成员,不能访问子类成员结论:子类指针不可以指向父类对象,需要类型转换才可以笔记:<1>.当基类指针指向派生类的时候,只能操作派生类从基类中继承过来的数据.<2>.当派生类指向基类的指针,因为内存空间比基类长,访问的话会导致内存溢出,所以不允许派生类的指针指向基类。加深理解:<1>.通常来说,子类肯定含有父类所有的成员变量和方法函数.所以用父类指针指向子类时,没有问题,因为父类有的...

2021-03-24 14:51:05 8609

原创 Probuf学习笔记

一 、什么是probufprobuf是google团队开发的一种语言无关、平台无关、可扩展的结构化数据序列化方法(常用于通信协议、数据存储等)。二 、优缺点分析优点:与XML和JSON相比,Protobuf 编码是二进制而不是文本,使用protobuf表示的数据会将数据压缩得更小,大约是json格式的1/10,xml格式的1/20。并且在反序列效率上明显优于XML。扩展性兼容性好,只需更新数据结构文件即可。缺点:由于数据采用二进制编码,出问题时不易调试。三 、安装与使用...

2021-03-23 14:57:02 649

原创 2020-12-31

创建动态链接库及类的导出创建一个动态库项目BDLL,在其中创建一个类B作为导出类//头文件#ifndef BBB_h__#define BBB_h__class __declspec(dllexport) BBB{public: BBB(void); ~BBB(void); int GetB();};#endif // BBB_h__//源文件#include "BBB.h"BBB::BBB(void){}BBB::~BBB(void){}int

2021-01-05 15:54:19 266

原创 句柄的数据类型多为void*的原因

主要有3方面原因1、void类型的指针不能执行++或者+n的操作2、不能直接取空指针指向的内容3、转换为其他类型指针时无需类型转换,例如 voidpVoid; intpInt = pVoid;这样保证了即使为void类型后面使用也很方面综上几点原因,可以使系统很好的保护句柄不被改变和破坏,又可以保证句柄作为指针时使用方便...

2020-12-11 14:50:58 385

原创 判断图片格式

if(0xFF == buffer[0] && 0xD8 == buffer[1]) //JPG格式if('B' == buffer[0] || 'M' == buffer[1]) // BMP格式

2020-04-02 15:04:32 197

转载 QComboBox下拉列表样式美化定义

Qt Assistant中官方提供的脚本定义样例如下:QComboBox { border: 1px solid gray; border-radius: 3px; padding: 1px 18px 1px 3px; min-width: 6em;}QComboBox:editable { background: white;}QComb...

2019-04-25 17:00:11 1994

原创 VS2013中C++方式的进程间通信---socket

服务器进程:#include &lt;Windows.h&gt;#include &lt;iostream&gt;using namespace std;#pragma comment(lib, "ws2_32.lib")SOCKET ServerSocket;SOCKET CientSocket;#define IP_ADDRESS "127.0.0.1"#def...

2018-10-19 16:21:49 1562 1

原创 VS2013中C++方式的进程间通信---共享内存

进程A:#include &lt;Windows.h&gt;HANDLE hMapFile = INVALID_HANDLE_VALUE;LPVOID lpBase = NULL;#define BUF_SIZE 8 //设置共享内存长度int main(int argc, char *argv[]){ //功能:采用共享内存方式将端口号写入内存中供客户端读取 cha...

2018-10-18 17:32:16 1846

原创 在C++应用程序中设置生成dump并使用VS进行调试

首先,包含头文件#include "Windows.h"#include "DbgHelp.h"其次,在代码中添加这两个函数int GenerateMiniDump(HANDLE hFile, PEXCEPTION_POINTERS pExceptionPointers, PWCHAR pwAppName){ BOOL bOwnDumpFile = FALSE; HANDL...

2018-10-18 16:19:34 1216

原创 在Windows环境下使用gcc生成可执行程序简介

gcc(GNU编译器套件)。gcc的初衷是为GNU操作系统专门编写的一款编译器,可以处理多种编程语言:C、C++、Objective-c 、Objective-c++、Fortran、 Java 、Ada 、Go及汇编语言。基本用法:在使用gcc编译器时,我们必须给出一系列必要的调用参数和文件名称。调用参数大约有100多个,具体可参考GCC Manual。用法:gcc [options...

2018-09-20 15:59:19 9199

原创 在Windows环境下安装及配置gcc编译器

我们都知道,gcc是GNU操作系统的编译套件,那么在Windows系统下可以使用gcc吗?答案是可以的。介绍MinGW首先我们先介绍下MinGW,MinGM是指只用自由软件来生成纯粹的Win32可执行文件的编译环境,它是Minimalist GNU on Windows的略称,见名知意,是在Windows上部署了一个简洁版的GNU系统,是一套GNU的缩减工具集合,其中就有我们需要的gcc。...

2018-09-20 14:49:52 3754

原创 创建第一个Qt Quick Application

1、创建工程2、 mainc.pp源码#include &lt;QGuiApplication&gt;#include &lt;QQmlApplicationEngine&gt;int main(int argc, char *argv[]){ QGuiApplication app(argc, argv); QQmlApplicationEngine en...

2018-09-17 18:27:53 2043

原创 双击运行Qt应用程序报缺库不一定都是打包的问题,有可能是程序本身代码逻辑的问题

打包发布开发完成的QT应用程序到别的无Qt开发环境的机器上双击打开运行,结果报了如下提示:按字面意思一直以为是缺库或库不对应的问题,折腾一番后实在找不出原因就去逐看代码,结果发现还真是代码问题导致的。我用的是vs+qt的开发环境,要看应用程序都用到哪些库了可以在vs中点击运行,在输出视图中便可以看到应用程序都在加载调用哪些库了,显示信息如下:真正发现问题是通过对比查看正常的和不...

2018-09-10 16:11:34 320

原创 使用QT自带打包工具windeployqt.exe打包程序

步骤:1、新建一个文件夹,随意取名Release2、放入编译好的应用程序,以QConfigure.exe为例3、在Qt安装目录D:\Qt\32\Qt5.5.1\5.5\msvc2013\bin下找到windeployqt.exe,将windeployqt.exe放到Release文件夹下4、在文件夹路径栏中输入“cmd”打开命令行窗口,在其中输入“windeployqt QCo...

2018-09-10 15:44:01 2475 1

原创 Qt实现自定义窗体

Qt中已经为我们封装了很好用的窗口风格,但在实际开发过程当中,要么需求要么UI抛过来的界面要求总是平添许多工作量。今天得空便来记录下我在项目中实现的一个需求:扁平化界面风格。虽然可能还会在未来的使用过程中暴露出一些问题,但目前还是可以满足基本使用需求的。进入正题,首先我们必须创建一个基于QDialog的带界面的类,然后对Qt生成的窗体进行改造,再在代码中应用信号槽机制实现类似于原生窗体的事件交

2017-11-29 13:45:46 2852

原创 Qt第二天——静态版本编译

上篇介绍了QT开发的基本知识——环境搭建,相信大家已经最qt开发有所了解,但是不管是msvc、mingw,都是使用qt的相关动态库进行编译的,因此,我们做出来的应用程序若是换到一台没有安装过qt开发环境的机器上,将会提示缺少qt相关的动态库而无法正常运行,除非你再把需要用到的库也搬过来,但这样显然很麻烦,有没有什么办法可以解决这个问题?今天我们就来介绍下静态编译qt应用程序的准备工作。

2017-08-11 14:24:34 5945

原创 Qt第一天——搭建开发环境

 Qt下载网址:  官网下载地址:http://www.qt.io/download(速度慢)  官网提供的镜像下载地址:http://download.qt.io 下载目录说明:我们要找的东西大多在archive目录下。我们开发Qt程序的常用途径分为两种:使用Qt creator集成开发环境来开发,或使用

2017-08-11 13:08:53 428 1

Visual_Assist_X

支持到2013的番茄助手,里面包括安装、卸载及过了试用期的破解方法。

2017-09-28

quazip编译的linux库

quazip编译的linux库

2016-04-27

QT实现虚拟键盘

QT实现虚拟键盘

2016-04-27

VC中多线程使用.doc

vc++上的应用,都是多线程的应用问题,一定对你有帮助

2012-07-06

最全的winAPI手册

最全的winAPI手册,只要您想学好编程,就一定能帮到您

2012-07-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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