- 博客(30)
- 资源 (11)
- 收藏
- 关注
转载 QT QODBC driver not loaded
本人亲自测试,在Qt4下同样可行:编译C:\Qt\Qt5.0.1\5.0.1\Src\qtbase\src\plugins\sqldrivers\sqldrivers.pro然后在C:\plugins\sqldrivers\下面的文件复制到C:\Qt\Qt5.0.1\5.0.1\mingw47_32\plugins\sqldrivers\下在project.pro中增加以下内容QT...
2018-12-29 13:19:42 3799
转载 C++ 初始化操作由 case 标签跳过
最近在编毕业设计的程序, 中间遇到不少细节问题,随时整理记录下来。运行环境VS2008 C++ MFC程序switch(nIDEvent) { case 1: CString strTime ; //系统时间 CTime time = CTime::GetCurrentTime(); strTime = time.Format(_T(...
2018-12-27 22:39:54 1896
转载 数据库连接池的主要操作
最近在研究数据库连接池,要实现这个功能,首先要知道其应用场景,其次是具体的逻辑:应用场景:如果用户不使用连接池,而是每当线程需要时创建一个新的连接,那么用户的应用程序的资源使用会产生非常大的浪费并且可能会导致高负载下的异常发生。注意,每个数据库连接在客户端和服务器端都有花销(内存,CPU,上下文切换等等)。每个连接均会对应用程序和服务器的可用资源带来一定的限制。不管这些连接是否在做有用...
2018-12-27 21:27:44 304
原创 wmi常用列表
中文名字叫Windows管理规范。从Windows 2000开始,WMI(Windows 管理规范)就内置于操作系统中,并且成为了Windows系统管理的重要组成部分。WMI的本领如下:1.获取本地和远程计算机的硬件软件信息。2.监视本地和远程计算机的软件和服务等运行状况。3.控制本地和远程计算机的软件和服务运行。4.高级应用。常用列表如下:// 硬件Win32_Proce...
2018-12-25 22:08:17 11321
原创 Qt程序管理员运行、修改编译后的exe图标以及处理判断windows10系统出错的问题
1、至于qt如何修改图标和获取UAC权限,只需要几个文件边可以实现,如下 manifest.rc#include <windows.h>ID_ICON ICON DISCARDABLE "qt.ico"CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "winadmin.exe.manifest"wina...
2018-12-25 20:55:25 802
转载 Qt数据库之数据库连接池
在前面的章节里,我们使用了下面的函数创建和取得数据库连接:void createConnectionByName(const QString &connectionName) { QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL", connectionName); db.setHostName("127.0.0....
2018-12-24 22:22:54 2474 2
转载 C++的难点和优势
CSDN:你认为C++最大的难点和优势是什么?陈抒:以我经验来看构成C++学习困难有四点:知识点广泛而且难度高。按照几年前Scot Mayer在Effective C++中对C++的定义来看,C++是一门多范型语言,包括了C、面向对象编程和泛型编程。程序员需要正确理解很多基础概念,比如,堆和栈的区别、指针、指针的指针、虚函数的内部原理、继承引发的对象内存布局、多继承引发的模棱两可、模板以及...
2018-12-23 18:52:02 651
原创 qt遍历ini配置文件
假设有一个ini文件的内容如下:[test]test11=666test22=a[ceshi]aaa=11bbb=32ccc=0执行如下代码,遍历ini文件int main(int argc, char *argv[]){ QCoreApplication a(argc, argv); QSettings set("./test.ini",QSet...
2018-12-19 15:41:42 2914
转载 void关键字的使用规则
规则一如果函数没有返回值,那么应声明为void类型 规则二如果函数无参数,那么应声明其参数为void。 规则三小心使用void指针类型按照ANSI(American National Standards Institute)标准,不能对void指针进行算法操作,即下列操作都是不合法的:void * pvoid;pvoid++; //ANSI:错误pvoi...
2018-12-19 15:24:56 284
原创 c/c++使用{}初始化数组需要注意的(2)
c/c++语言中,数组初始化的方式主要有三种:1、声明时,使用 {0} 初始化;2、使用memset;3、用for循环赋值。这次我们重点关注第1点,我们来看下面的代码int main(int argc, char *argv[]){ int a[10]; for(int i=0;i<sizeof(a)/sizeof(int);i++) ...
2018-12-19 14:12:00 346
转载 c/c++初始化数组需要注意的(1)
C语言中,数组初始化的方式主要有三种:1、声明时,使用 {0} 初始化;2、使用memset;3、用for循环赋值。 那么,这三种方法的原理以及效率如何呢? 请看下面的测试代码:#define ARRAY_SIZE_MAX (1*1024*1024) void function1(){ char array[ARRAY_SIZE_MAX] = {0}; /...
2018-12-19 13:51:07 660
转载 常见时间复杂度及对应关系
注意,经常将log2n(以2为底的对数)简写成logn时间复杂度从小到大:O(1) < O(logn) < O(n) < O(nlogn) < O(n^2) < O(n^3) < O(2^n) < O(n!) < O(n^n)https://blog.csdn.net/xlengji/article/details/8214...
2018-12-18 21:10:45 1674
转载 C++中遍历multimap
在multimap中,同一个键关联的元素必然相邻存放。基于这个事实,就可以将某个键对应的值一一输出。1、使用find和count函数。count函数求出某个键出现的次数,find函数返回一个迭代器,指向第一个拥有正在查找的键的实例。2、使用lower_bound(key)和upper_bound(key) lower_bound(key)返回一个迭代器,指向键不小于k的第一个...
2018-12-18 21:01:15 3590
原创 Qt获取程序目录和工作目录
//获取exe所在的目录qDebug()<<"current applicationDirPath: "<<QCoreApplication::applicationDirPath();//获取当前进程所在工作目录qDebug()<<"current currentPath: "<<QDir::currentPath();注:工作目录和e...
2018-12-17 21:24:44 4479 1
原创 程序开机启动时读取文件失败
今天在测试程序的时候发现,通过注册表来开机自启动程序时,读取不到配置文件,最后终究是发现了问题所在:我在程序中使用了相对路径,而通过注册表启动时程序的工作目录位于:系统盘(c):/windows/system32所以此时通过相对路径是找不到文件的,知道了原因,当然就很好解决了,使用绝对路径即可!产生这个现象的原因:是由于电脑开机时我们的进程是由系统进程启动的,系统进程的工作目录就是 —...
2018-12-17 21:19:46 1346
转载 Qt程序只运行一个实例
#include <QSharedMemory>QSharedMemory shared("name");//随便填个名字就行if (shared.attach()){ return 0;}shared.create(1);在main函数中加入以上代码,Qt生成的exe程序就只能启动一次了。--------------------- 原文:https...
2018-12-17 20:40:10 922
原创 HKEY_LOCAL_MACHINE和HKEY_CURRENT_USER开机启动程序的区别
HKEY_LOCAL_MACHINE 存放的是这个计算机的设置,而 HKEY_CURRENT_USER 存放的是有关当前登录的用户的设置,也就是说,不同的用户登录时 HKEY_CURRENT_USER 的内容是不同的,而 HKEY_LOCAL_MACHINE 是相同的。还有,假设一个程序只能以管理员身份运行,那么将该程序写入到HKEY_CURRENT_USER时,开机后程序不能正常启动...
2018-12-17 20:20:07 5087
转载 QT如何捕获全局的键盘事件?
QT如何捕获全局的键盘事件?方法一:继承QApplication类,并重载notify()函数Qt是用QApplication::notify()函数来分发事件的。想要在任何事件过滤器查看任何事件之前先得到这些事件,重载这个函数是唯一的办法。通常来说事件过滤器更好用一些,因为不需要去继承QApplication类。而且可以给QApplication对象安装任意个数的事件过滤器,相比之下,...
2018-12-16 22:45:19 7530
原创 关于Qt控制台程序隐藏窗体
有时候用qt开发了控制台程序但有不想让他显示,怎么办?打开pro文件,注释这一句即可:#CONFIG += console呵呵~
2018-12-15 23:15:11 13171 6
原创 命令行解压cab文件
.cab文件是Windows的压缩格式expand是微软自带的解压缩文件工具,可直接在命令行中调用,可以解压缩用makecab制作出来的压缩文件。例如从 XXX.CAB 中提取所有文件到C盘下的123文件夹里,则命令语法是EXPAND -F:*.* XXX.CAB C:\123\注意:其中c:\123文件夹必须存在,否则解压失败,*.*是通配符,表示解压所有后缀和任意文件名...
2018-12-14 13:45:12 7650
原创 c++字符数组中的'\0'’也占用一个字符
千万不要忘了,尤其是在实现string类时new字符数组的时候要考虑到,否则会造成隐患 char a[]="wang"; qDebug()<<sizeof(a); //打印结果5
2018-12-13 21:38:31 10292
原创 QNetworkAccessManager下载文件失败,服务器重定向
今天在使用QNetworkAccessManager下载文件的时候,无法下载到文件,但是通过浏览器却可以成功下载,最后发现问题出在这里:就是下载的网址出现了重定向,浏览器是可以正确重定向的,但是我们的程序却没有处理,解决办法---核心代码如下:pNetworkRpy = pNetworkMgr->get(request);connect(pNetworkRpy,SIGNAL(fi...
2018-12-13 17:14:42 1769
转载 QLabel自动换行是可以解决的
QLabel自动换行是可以解决的,我在UBUNTU下试过中文,没有任何分隔符,以下是代码部分1. 让QLabel自适应text的大小,直接用下面的代码:LabelName->adjustSize();2. 让QLabel能够自动判断并换行显示:LabelName->setGeometry(QRect(328, 240, 329, 27*4)); //四倍行距LabelNam...
2018-12-13 15:00:33 1186
原创 QFileInfo获取文件名以文件夹路径
QFileInfo info("c:/ww/a/test/../a.jpg"); qDebug()<<info.absoluteDir(); qDebug()<<info.absoluteFilePath(); qDebug()<<info.absolutePath(); qDebug()<<info.fil...
2018-12-13 09:12:28 7220
原创 关于使用QThread需要注意的
一般在Qt中,我们有两种使用线程的方法:声明一个类,该类继承QThread,我们只需重写run函数即可,在run函数中实现我们需要在线程中处理的事务。 声明一个类,该类继承QObject,假设该类实例化成a,调用a.moveToThread()该方法,即可将该对象移动到新线程中,此时对象中的槽函数归属于新线程,也就是信号接收者属于新线程,而且我们也推荐这样做 当然,这两种...
2018-12-12 22:34:06 825
原创 QDir的mkpath和mkdir的区别
//1QDir dir;qDebug()<<dir.mkpath("d:/w/w/w");qDebug()<<dir.mkdir("d:/a/a/a/a");//输出结果 //true//false//2qDebug()<<dir.mkpath("d:/w");qDebug()<<dir.mkdir(&qu
2018-12-10 22:42:20 4177
转载 Qt保留小数点后两位
double/float size = 2.3334524;QString str = QString::number(size, 'f', 2);其中f代表非科学计数法格式,2代表小数点后两位。
2018-12-10 14:19:12 1732
原创 卸载Office密钥或删除序列号
以管理员权限运行命令行查询序列号cscript "C:\Program Files (x86)\Microsoft Office\Office16\ospp.vbs" /dstatus(记住执行该命令后出现的后五位字母,替换下面的蓝色字母)卸载序列号cscript "C:\Program Files (x86)\Microsoft Office\Office16\OSPP.VBS...
2018-12-04 10:11:14 33771
原创 map判断值是否存在需要注意的问题
对于像这种判断map<int,int> myMap;//此时即使myMap[2]不存在,经过这样的判断之后将会创建myMap[2]并初始化为0if(myMap[2]==5){//}else{ //size已经发生了变化 cout<<myMap.size()<<endl;}特别注意:先,会在map查找这个键值的项,map如...
2018-12-03 22:48:08 4254
原创 简化版vector
参考书上敲了一个简化版的vector,这里的简化主要是指没有用模板去实现vector,而仅以基于string的vector这个范例来演示其内部的内存分配原理:实现的功能有以下几点:实现了预先保留空间,其内存分配策略为扩大两倍容量。 基于allocator实现了申请内存和初始化对象的分离。 使用move函数实现string的移动构造。待实现的功能:模板技术 引用计数 内部其他方...
2018-12-01 18:17:01 201
Scrollbar_png.zip
2019-11-20
DuiDesigner.rar
2019-11-14
VC AssistantX_适用VS2005.zip
2019-07-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人