编程技巧
文章平均质量分 55
分享编程技巧
好儿郎-志在四方
这个作者很懒,什么都没留下…
展开
-
为软件提升管理员权限(mt.exe)
需求 在项目开发的过程中,可能会遇到需要使用admin权限的操作。第一种操作是可以要求软件使用者,通过鼠标右键菜单,选择“以管理员身份运行”方式来运行程序,这种方式虽然对软件开发者的要求降低了,但却对软件使用者的要求提高了,并不是一种妥当的方式。下面提供一种亲测可行的方式,自动将软件提升管理员(admin)权限。(已测试平台:windows 11 64bit,windows 7 64bit)实现步骤新建一个文本文档,填入以下内容后,保存为uac.manifest:<?xml ver原创 2021-10-30 22:11:01 · 2689 阅读 · 2 评论 -
使用OpenSSL进行RSA非对称加密(C++版本)
使用OpenSSL进行RSA非对称加密(C++版本)运行环境环境准备源代码功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入运行环境源代码运行环境,Widows 10,Qt Creator 5.14.1 MingW。环境准备关原创 2021-07-08 19:21:49 · 797 阅读 · 0 评论 -
机场跑道入侵检测(C++、Qt)
1、读取并解析机场跑道、车道数据,显示和存储。2、根据本机的经纬度坐标,确定本机所在跑道,并计算出一个多边形区域。3、实时获取它机、车辆坐标数据,判断是否位于本机起飞跑道的多边形范围内。4、如果它机、车辆坐标位于本机跑道,则预警。原创 2020-06-23 22:10:15 · 1710 阅读 · 0 评论 -
C++中四种类型转换运算符的使用方法(reinterpret_cast,const_cast,static_cast,dynamic_cast)
reinterpret_cast,const_cast,static_cast,dynamic_cast,使用方法详解原创 2016-08-25 23:17:59 · 1314 阅读 · 3 评论 -
C++编程经验分享
C++编程经验分享。转载 2016-08-30 03:13:51 · 2056 阅读 · 0 评论 -
C、C++中使用const提高程序的健壮性和效率
C、C++中使用const提高程序的健壮性和效率转载 2016-08-30 02:56:57 · 3685 阅读 · 1 评论 -
C++: 友元函数和友元类详解
(1) 友元关系不能被继承。 (2) 友元关系是单向的,不具有交换性。若类B是类A的友元,类A不一定是类B的友元,要看在类中是否有相应的声明。 (3) 友元关系不具有传递性。若类B是类A的友元,类C是B的友元,类C不一定是类A的友元,同样要看类中是否有相应的申明转载 2016-07-17 22:40:42 · 2132 阅读 · 0 评论 -
Visual Studio中出现This function or variable may be unsafe错误提示
d:\documents\visual studio 2013\projects\structclasstest\structclasstest\structclasstest.cpp(14): error C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See on原创 2016-07-27 17:37:58 · 1636 阅读 · 0 评论 -
Thinking in C++: 第1章 为什么C++会成功
C + +能够如此成功,部分原因是它的目标不只是为了将 C语言转变成O O P语言(虽然这是最初的目的),而且还为了解决当今程序员,特别是那些在 C语言中已经大量投资的程序员所面临的许多问题。转载 2016-07-16 00:28:25 · 1133 阅读 · 0 评论 -
Thinking in C++: 第1章 多态性
程序员可以用关键字 v i r t u a l表明他希望某个函数有晚捆绑的灵活性,而并不需要懂得v i r t u a l的使用机制。没有它,就不能用 C + +做面向对象的程序设计。 Vi r t u a l函数(虚函数)表示允许在相同家族中的类有不同的行为。这些不同是引起多态行为的原因。转载 2016-07-15 23:56:41 · 788 阅读 · 0 评论 -
Thinking in C++: 第1章 继承:类型关系
继承表示了基本类型和派生类型之间的相似性。一个基本类型具有所有由它派生出来的类型所共有的特性和行为。转载 2016-07-15 23:36:42 · 595 阅读 · 0 评论 -
Thinking in C++: 第1章 对象=特性+行为
类描述了一组有相同特性(数据元素)和相同行为(函数)的对象。转载 2016-07-15 23:24:25 · 608 阅读 · 0 评论 -
Thinking in C++: 第1章 对象的演化
计算机革命起源于一台机器,程序设计语言也源于一台机器。然而计算机并不仅仅是一台机器,它是心智放大器和另一种有表述能力的媒体。转载 2016-07-15 23:19:10 · 551 阅读 · 0 评论 -
C++的虚函数和虚析构函数
疑问:如何利用一个循环结构,依次处理同一个类族中不同类的对象?如何解决这个问题呢?这就要应用到虚函数来实现多态性。原创 2016-06-17 10:48:02 · 1620 阅读 · 0 评论 -
C++:什么情况下需要将析构函数定义为虚函数?
C++:什么情况下需要将析构函数定义为虚函数。转载 2016-10-17 15:55:22 · 1737 阅读 · 0 评论 -
C++:构造函数中调用虚函数
C++:构造函数中调用虚函数转载 2016-10-17 16:07:43 · 1049 阅读 · 0 评论 -
如何将一组数据从一个区间缩放到另一区间?
如何将一组数据从一个区间缩放到另一区间?原创 2017-01-15 19:13:30 · 13325 阅读 · 1 评论 -
四象限法则 - 便签工具(基于Qt\C++实现)
四象限法则 - 便签工具欢迎使用Markdown编辑器实现功能:截图截图欢迎使用Markdown编辑器四象限法则是著名管理学家史蒂芬·科维提出的一个时间管理理论,也有一说是艾森豪威尔提出(无从考证)。史蒂芬·科维把工作按照重要和紧急两个不同的程度进行了划分,基本上可以分为四个象限:既紧急又重要、重要但不紧急、紧急但不重要、既不紧急也不重要。按处理顺序划分:先是既紧急又重要的,接着是重要但不紧急...原创 2019-10-04 10:32:43 · 2995 阅读 · 2 评论 -
Ctk:使用sendEvent传递自定义类型的数据
Ctk:使用sendEvent传递自定义类型的数据举例:使用sendEvent传递结构体数据。声明结构体注册自定义类型发送消息接收消息使用Ctk插件框架开发项目的时候,经常需要使用Ctk提供的插件之间消息通信机制,sendEvent()和postEvent()是常用的两种方式。使用ctkDictionary承载我们想要传递数据的载体。ctkDictionary本质是一个QHash。现在就问题就...原创 2019-08-11 14:14:01 · 1227 阅读 · 0 评论 -
C++中的悬垂指针(delete指针后依然可以访问的问题)
垂悬指针:在指针被delete之后,此时指针被称为空悬指针或者垂悬指针,即指向一块曾经保存she数据对象,但现在已经无效的内存的指针。在C++编程中,当我们delete一个指针后,指针所指向的堆地址空间便被释放,指针值变成无效。虽然指针已经无效,但在很多机器上指针任然保存着已经被释放了的动态内存地址(并且内存地址中的值也并未被擦除),这会让编程人员误解,甚至理解错误。观察如下实例:#inc...原创 2019-05-10 15:56:29 · 1538 阅读 · 0 评论 -
基于Qt的CRC16校验实现(查表法)
CRC为校验和的一种,是两个字节数据流采用二进制除法(没有进位,使用XOR来代替减法)相除所得到的余数。其中被除数是需要计算校验和的信息数据流的二进制表示;除数是一个长度为 {\displaystyle (n+1)} (n+1)的预定义(短)的二进制数,通常用多项式的系数来表示。原创 2019-04-10 22:16:04 · 5745 阅读 · 1 评论 -
Qt中,qdebug彩色消息输出
已经找不到原始链接地址在终端输出彩色信息有点类似于html的语法,即在要输出的文字前加上转义字符。指令格式如下\033[*m这里的*就是转义字符,例如我们要输出一段绿色的文字qDebug("\033[32mHello!");输出结果:Hello!效果图:此外还可以设置字体的背景底色、是否加粗、清楚屏幕等等。。。。其中*的取值如下 0 : Reset Color Attrib...转载 2019-01-11 22:08:12 · 1648 阅读 · 0 评论 -
在C语言中使用回调函数
在C语言中使用回调函数回调函数的应用场景事件驱动机制通信协议的“推”模式“拉”模式 (询问)“推”模式 (上报)实现回调的步骤回调函数的应用场景事件驱动机制为了简单说明该机制,我们假定有两个类,类A与类B。该模式的工作机制如下:1.类A提供一个回调函数F,该回调函数执行根据不同的参数,执行不同的动作;2.类A在初始化类B时,传入回调函数F的函数指针pF;3.类B根据需要在不同的情况下...原创 2018-10-08 22:14:36 · 2130 阅读 · 0 评论 -
编程控制仪器进行自动化测试(Visa驱动、GPIB驱动)
本文将会介绍如何通过编程的方法来控制仪器,并进行自动测试编程控制仪器,下面简称[“程控”][3];博主经常使用的是安捷伦、罗德与施瓦茨两大厂家的仪器;经常程控的仪器有信号源、频谱仪、示波器、网络信号分析仪、衰减器、电源等支持程控的设备;程控必备基础学习程控仪器,就必须得了解一些相关的基础知识。(曾经有群友向我请教关于程控的问题,几乎将我问到奔溃)1. SCPI指令集...原创 2018-04-01 15:26:06 · 29504 阅读 · 19 评论 -
C++、Qt操作Access数据库
C++、Qt操作Access数据库工作需要,使用C++、Qt封装了几个操作Access数据库的接口,分享给大家, 代码是经过反复测试,可以直接使用的:1、获取指定数据库的表: /** * @brief 获取Access数据库中所有的表 * @param mdbPath 数据库文件路径 * @param tableList 输出参数 表列表 ...原创 2018-02-10 16:15:56 · 8123 阅读 · 16 评论 -
GPIB远程控制CMS54综测仪(加单位控不成功)
使用GPIB远程控制CMS54综测仪,加单位之后控不成功。原创 2017-09-23 15:29:03 · 1700 阅读 · 4 评论 -
C++成员变量的初始化顺序
C++成员变量的初始化顺序转载 2017-02-22 23:44:01 · 1486 阅读 · 8 评论 -
在程序开发中,++i 与 i++的区别在哪里?
在程序开发中,++i 与 i++的区别在哪里?转载 2017-02-08 00:58:01 · 1438 阅读 · 1 评论 -
动态链接库、静态库、import库区别
动态链接库、静态库、import库区别Windows为应用程序提供了丰富的函数调用,这些函数调用都包含在动态链接库中。其中有3个最重要的DLL。Kernel32.dll,它包含用于管理内存、进程和线程的各个函数;User32.dll,它包含用于执行用户界面任务(如窗口的创建和消息的传送)的各个函数;动态链接库(Dynamic Linked Library):Windows为应用程序提供了丰富的函数调用,这些函数调用都包含在动态链接库中。其中有3个最重要的DLL。Kernel32.dll原创 2016-04-23 13:57:11 · 2501 阅读 · 4 评论 -
如何使用VC++6.0发布程序(即release版本程序)
大家都知道VC编译器默认生成debug版本的程序,但是debug版本程序无法运行在没有安装VC的电脑上,这就要就我们生成release版本的程序,因为release版本在未安装VC的电脑上也能运行(包含了相关的库和函数)。原创 2016-04-21 21:04:48 · 6155 阅读 · 0 评论 -
C++标准类string的常用函数介绍
string(const char *s); //用c字符串s初始化string(int n,char c); //用n个字符c初始化此外,string类还支持默认构造函数和复制构造函数,如string s1;string s2="hello";都是正确的写法。当构造的string太长而无法表达时会抛出length_error异常原创 2016-04-16 11:41:32 · 964 阅读 · 0 评论 -
C++程序设计课后习题及解答(第一章)
C++程序设计课后习题解答(第一章)原创 2016-01-03 17:09:41 · 6621 阅读 · 0 评论 -
C++程序设计课后习题及解答(第二章)
编写一个完整的程序,运行时向用户提问“你考试考了多少分?(0-100)”,接收输入后判断其等级显示出来。规则如下: 优 90<=分数<=100等级= 良 80<=分数<90 中 60<=分数<80 差 0<=分数<60.原创 2016-01-03 17:57:25 · 5387 阅读 · 1 评论 -
C++程序设计课后习题及解答(第四章)
设计并测试一个名为Rectangle的矩形类,其属性为矩形的左下角与右上角的两个点的坐标,根据坐标能算出矩形的面积。设计一个用于人事管理的“人员”类。由于考虑到通用性,这里只抽象出所有类型人员都具有的属性:编号、性别、出生日期、身份证号等。其中“出生日期”声明为一个“日期”类内嵌对象。用成员函数实现对人员信息的录入和显示。要求包括:构造函数和析构函数、复制构造函数、内联成员函数、带默认形参值得成员函数、类的组合。原创 2016-01-03 18:01:45 · 5341 阅读 · 0 评论 -
C++程序设计课后习题及解答(第七章)
(1).如果派生类B已经重载了基类A的一个成员函数fn1(),没有重载基类A的成员函数fn2(),如何在派生类的函数中调用基类的成员函数fn1(),fn2()?(2).定义一个object类,有数据成员weight及函数成员:构造函数、析构函数、SetWeight()、Getweight(),由其公有派生类box类,增加数据成员height和width及函数成员:构造函数、析构函数、GetWidth()、SetWidth()、GetHeight()、setHeight()。声明一个box对象,观察构造函数原创 2016-01-03 19:06:07 · 7653 阅读 · 0 评论 -
C++程序设计课后习题及解答(第八章)
(1).定义一个point类,对其重载++、¬- -、<<、>>运算符,并在主函数中对其进行测试。(2).请写一个抽象类Shape,它有两个私有数据成员X、Y,表示一个点的坐标,有一个无参构造函数和有参构造函数,有用于几何图形计算面积(GetArea)和计算周长(GetPerim)的纯虚函数。通过抽象类Shape派生出矩形类Rectangle和圆类Circle。在主函数中定义一个Rectangle对象和一个Circle对象,计算并显示出它们的面积和周长。原创 2016-01-03 19:00:45 · 3950 阅读 · 0 评论 -
malloc和new的区别---当malloc和string相遇时, 容易出错
在学习C语言的时候, 我们学了malloc,(用来向系统申请内存空间),后来学习C++的时候, 又学了new(用来创建一个对象), 那么malloc和new有什么区别呢?转载 2016-01-01 21:46:53 · 1244 阅读 · 0 评论 -
C++实现输入输出运算符重载、友元函数和成员函数实现复数类Complex
题目要求如下:1) 基本的构造函数;2) 成员运算符+、-实现复数的加减运算;3) 友元运算符+、-实现更合理的加减运算;4) 运算符<<和>>实现复数类的输出输入。原创 2015-11-29 20:48:41 · 11213 阅读 · 0 评论 -
C/C++中常出现的#ifndef,#define,#endif解析
想必很多人都看过“头文件中的 #ifndef/#define/#endif 防止该头文件被重复引用”。但是是否能理解“被重复引用”是什么意思?是不能在不同的两个文件中使用include来包含这个头文件吗?如果头文件被重复引用了,会产生什么后果?是不是所有的头文件中都要加入#ifndef/#define/#endif 这些代码?转载 2016-01-17 18:51:19 · 3939 阅读 · 0 评论 -
C++新增数据类型long long ,unsigned long long
long long整型有两种:long long和unsigned long long。在C++11中,标准要求long long整型可以在不同平台上有不同的长度,但至少有64位。原创 2015-12-29 21:05:35 · 49351 阅读 · 1 评论