- 博客(59)
- 资源 (12)
- 问答 (1)
- 收藏
- 关注
原创 右值引用,移动语义和完美转发
书常读常新。今天重学右值引用,移动语义和完美转发又有了新的认识,现总结如下:1.区分右值和左值的简单方法:看能不能对表达式取地址,如果能就是左值,不能即为右值。右值的特点是不具名,不能通过名称找到它,只能通过引用的方式找到。2.右值引用的作用是,延长右值的生命周期,右值的生命周期将和右值引用一样,只要右值引用变量还存活,该右值临时量将一直存活下去。我们可以使用这一特性做一些性能优化,例如移动拷...
2020-02-05 21:52:25 313
原创 QMAKESPEC环境变量详解
相关知识要讲解QMAKESPEC环境变量的知识,先要了解如下知识qmake.pro项目文件makefile文件1.qmakeqmake是用来为不同的平台的开发项目创建Makefile的Trolltech开发一个易于使用的工具。手写Makefile是比较困难并且容易出错的,尤其是需要给不同的平台和编译器组合写几个Makefile。qmake简化了Makefile的生成,使用qmak
2018-01-12 14:44:07 4272
原创 QtCreator 断点不起作用
使用QtCreator 调试程序时一直无法进入断点,断点根本不起作用。解决方法:打开.pro文件将图中的release改为debug,再次调试运行就可以进入断点了。
2018-01-12 14:44:04 9281 1
原创 bootstrap媒体查询
Bootstrap 中的媒体查询允许您基于视口大小移动、显示并隐藏内容。下面的媒体查询在 LESS 文件中使用,用来创建 Bootstrap 网格系统中的关键的分界点阈值。/* 超小设备(手机,小于 768px) *//* Bootstrap 中默认情况下没有媒体查询 *//* 小型设备(平板电脑,768px 起) */@media (min-width: @screen-sm-min)
2018-01-12 14:44:02 2815 1
原创 Qt用Zip压缩文件夹的一些坑
环境:QT3.3.8vs2005QDir dir("/home/Blinux/html");if ( !dir.exists() ){ //目录不存在}QString strZip = ""/home/Blinux/html".zip";m_pProcess->setWorkingDirectory(dir); //设置工作空间m_pProcess->addAr
2018-01-12 14:43:59 1775
原创 QCanvasItem介绍-QT3
QCanvasItem类提供一个在QCanvas上的抽象图形对象。各种QCanvasItem子类提供立即可用的行为。这个类是一个纯粹的抽象超类,它提供了在所有具体的canvas项目类中共享的行为。QCanvasItem不打算直接子类化。子类话一个他的子类更容易,QCanvasPolygonalItem (最常见的基类), QCanvasRectangle, QCanvasSprite, QCan
2018-01-12 14:43:56 414
原创 C盘无损扩容
工具:分区助手专业版5.5下载地址:http://pan.baidu.com/s/1slHPGDn步骤打开分区助手,点“扩展分区向导”。弹出对话框,因为是扩展C盘所以选“扩展系统分区”,下一步。不用修改,继续下一步。弹出如下对话框,因为要扩展C盘,扩展的容量要从其他盘符获得,意味着其他盘符空间要减少。选中一个你想要从中获取空间的盘符,我选择的而是D盘。(该方式,并不会影响C
2018-01-12 14:43:53 14766 2
原创 ArcGis连接oracle失败:ORA-6413:连接未打开
问题:通过ARCMap 添加Oracle数据库连接时提示,ORA-6413:连接未打开。运行环境:ArcGis 10.2Oracle 10g解决方法:通过上网查找解决方法,网友说“ORA-6413:连接未打开”是因为:运行连接oracle的程序的目录名不能包括括号 检查自己ArcGis Desktop安装路径,发现安装在了D:\Program Files (x86)目录下
2018-01-12 14:43:51 1441
原创 通过ArcMap发布服务
打开ArcMap,添加一个空地图单击添加数据按钮单击之后出现下图点击 (连接到文件夹)按钮选择要添加的文件。添加之后如下。保存为mxd文件点击保存按钮就可以保存为mxd格式文件。选择 File->Share As->Service弹出对话框,选择Publish a service,然后下一步选择一个连接,并填写服务名如果没有可用连接,请检查ArcGis Serve
2018-01-12 14:43:48 1559
原创 C语言运算符优先级
C语言运算符优先级优先级运算符名称或含义使用形式结合方向说明1[]数组下标数组名[常量表达式]左到右--()圆括号(表达式)/函数名(形参表)--.成员选择(对象)对象.成员名--->成员选择(指
2018-01-12 14:43:45 203
原创 map key char*
STL中map的key能否用char 呢?当然可以!在程序中需要用到一个map,本来是这样写的,map mapStr;为了追求效率,把string改成了char ,map mapStr;结果呢?可想而知,每次放进去的是指针,当查找的时候就出问题了,总是找不到。因为key中存放的是指针,当然找不到了。需要重载一下操作符,当查找时比较指针对应的字符串就可以了。修改如下:struc
2018-01-12 14:43:42 603
原创 MySQL5.6.36 linux rpm包安装配置文档
一、卸载自带mysql,删除MySQL的lib库,服务文件[root@localhost ~]#rpm -qa|grep mysqlqt-mysql-4.6.2-26.el6_4.x86_64mysql-5.1.71-1.el6.x86_64mysql-libs-5.1.71-1.el6.x86_64mysql-devel-5.1.71-1.el6.x86_64mysql-server
2018-01-12 14:43:39 928
原创 火狐浏览器对svg支持的一点不足
项目中要用svg实现一个如下图所示的风机扇叶转动效果 当用chrome浏览器打开,动画显示正常。用火狐浏览器打开扇叶静止不动,代码如下
2018-01-12 14:43:36 2202
原创 linux+tomcat+jdk环境验证码无法显示
我的环境配置:RHEL6.5+tomcat6+jdk1.6今天遇到一个奇怪的现象,我的tomcat启动起来之后,网站无法显示验证码,导致无法登陆。我的tomcat启动过程是这样的:我有一个进程守护的程序monitor,当开机的时候用自启动脚本的方式启动monitor,然后monitor检测tomcat进程是否启动如果没有启动,就将tomcat进程启动起来。流程如下图所示:使用这样的方式启
2018-01-12 14:43:33 1149
原创 linux查询进程号,出现两个进程
[root@ADM01B ~]# ps -ef|grep iesmgrroot 5929 5321 0 09:38 pts/7 00:00:00 grep iesmgrroot 9798 1 0 Jun28 ? 00:00:05 iesmgr[root@ADM01B ~]# kill -9 5929-bash: kill: (5929)
2018-01-12 14:43:31 4859
原创 linux 下tomcat的安装
写在前面:由于项目使用jdk1.6开发,所以对应服务器应安装jdk1.6和tomcat61、环境变量的配置:打开/etc/bashrc配置环境变量JAVA_HOME=/usr/appsoft/jdk1.6.0_45/jreexport JAVA_HOME CLASSPATH= $ JAVA_HOME/lib/dt.jar: $JAVA_HOME/lib/tool
2018-01-12 14:43:28 273
原创 linux软件包介绍
一. 软件包的种类源码包二进制包(rpm包、系统默认包)二. 优缺点对比源码包源码包的优点1) 开源,源码可见,且可以修改2) 配置更加灵活,可以自由选择所需的功能3) 软件是编译安装,所以更加适合自己的系统,更加稳定和高效4) 卸载方便,只要将配置的安装的文件夹删掉即可,不能残留任何垃圾源码包缺点1) 安装过程步骤较多,尤其安装较大的软件集合时,容易出现拼写错误2
2018-01-12 14:43:25 353
原创 RPM基础知识
RPM包命名原则httpd-2.2.15-15.el6.centos.1.i686.rpmhttpd 软件包名2.2.15 软件版本15 软件发布的次数el6.centos 适合的linux平台i696 适合的硬件平台rpm rpm包扩展名(实际上linux是没有扩展名的,linux扩展名只是为了给人看的)区分包
2018-01-12 14:43:22 281
原创 安装gcc提示no acceptable C compiler found in $PATH
安装gcc提示no acceptable C compiler found in $PATH 从所报错可以看出是缺少了c编译器,因为gcc就是c编译器,所以没有安装gcc就没有c编译器。之所以报这样的错误是因为我安装gcc是用的源码。源码包:gcc-4.7.2.tar.bz2下载gcc对应的rpm包即可。如果安装过程中提示缺少依赖库可以到http://www.rpmfind.net/l
2018-01-12 14:43:19 4145
原创 Qt WebEngine版本要求
WebEngine是Qt5.4之后加入的新特性,用Qt WebEngine取代之前的Qt Webkithttp://wiki.qt.io/QtWebEnginewindows版本windows版本需要vs2013支持,下面是官方文档的原话:Building on Windows currently requires Visual Studio 2013 or Visual Studi
2018-01-12 14:43:16 4924
原创 linux下安装QT5:error: unrecognized command line option ‘-fuse-ld=gold’
安装qt时在执行./configure时报错:error: unrecognized command line option ‘-fuse-ld=gold’这个错误是qt的一个bug。在装有gold linker的系统里,编译脚本会加入-fuse-ld=gold选项,但这个选项gcc是不支持的。解决办法是移除该选项,找到文件src/3rdparty/webkit/Source/common
2018-01-12 14:43:13 3151
原创 linux基础命令
shutdown -h now 立刻关机shutdown -r now 现在重新启动计算机reboot 现在重新启动计算机logout 注销用户vi编辑器的使用: 1)vi 文件名 2)输入i【进入命令模式】 3)输入esc【进入命令模式】 4)输入:【wq表示退出保持q!退出不保存】pwd 显示当前所在路径groupadd polic 添加
2018-01-12 14:43:10 149
原创 error: open of glibc-devel-2.12-1.132.el6.i686.rpm failed: 没有那个文件或目录
在安装qt的时候出现了错误:error: open of glibc-devel-2.12-1.132.el6.i686.rpm failed: 没有那个文件或目录错误原因:缺少glibc-devel解决方法:1、找到安装系统的linux镜像文件因为我需要32位的,所以我选择glibc-devel-2.12-1.132.el6.i686.rpm2、将glibc-devel-2.12-
2018-01-12 14:43:07 3083
原创 cmake的安装和卸载
cmake介绍:CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake。只是 CMake 的组态档取名为 CMakeLists.txt。Cmake 并不直接建构出最终的软件,而是产生标准的建构档(如 Unix 的 Makefile 或
2018-01-12 14:43:05 19633
原创 qmake 提示 Failure to open file:****
执行qmake时报错,如下图所示: 解决方法:将***.pro文件夹的属主改为当前用户,具体操作为:1、切换登录用户为:root2、#chown -R ies:ies /usr/appsoft 请将ies:ies改为你的用户,/usr/appsoft改为你的文件夹。经过以上修改qmake执行成功。
2018-01-12 14:43:02 1259
原创 MySql接口API函数综述 标签:
C API函数概述函数描述mysql_affected_rows()返回上次UPDATE、DELETE或INSERT查询更改/删除/插入的行数。mysql_autocommit()切换 autocommit模式,ON/OFFmysql_change_u
2018-01-12 14:42:59 180
原创 你所不知道的C和C++运行库 标签:
在使用vs2013调用vc2005编译出的dll时出现错误,遂将源程序用vs2013编译出dll,再用vs2013调用错误消失,不解。寻找原因时有人说“VC库版本不一样”,故查找C++运行库的相关知识,查到了如下文章,原文地址如下:http://blog.csdn.net/ithzhang/article/details/20160009原文如下:在
2018-01-12 14:42:56 257
原创 windows系统下使用cd命令
如果要切换到D:\Program Files目录下,大多数人会想当然的在命令行窗口输入 cd D:\Program Files回车。如下所示:发现并没有切换到D:\Program Files。正确的做法是输入D: 回车。发现已经切换到D盘下。输入cd Program Files 回车。成功切换到D:\Program Files目录下。
2017-06-14 23:20:47 123085 6
原创 Redhat5.9安装qt5.5.1出错error while loading shared libraries:libX11-cxb.so.1
出错原因是缺少了共享库libX11-cxb.so.1,是由于系统版本过低所致;重新安装红帽6.5即可解决该问题。
2017-06-02 11:05:18 1333
转载 MySql接口API函数综述
C API函数概述函数描述mysql_affected_rows()返回上次UPDATE、DELETE或INSERT查询更改/删除/插入的行数。mysql_autocommit()切换 autocommit模式,ON/OFFmysql_change_u
2017-05-27 08:32:10 3914
转载 关于各种无法解析的外部符号问题的相应解决方案
原文:http://blog.csdn.net/enotswn/article/details/5934938在使用vs2008调试程序的过程中,经常会出现无法解析的外部符号问题,可能的原因有很多种,下面这些是我一年来积累的经验.仅供参考. 考虑可能的原因:[0]出现无法解析可能是因为lib文件不正确,比如64位的编译配置,结果使用的是32位的lib包.[1]只
2017-05-19 16:51:17 1737
转载 理解互斥量和信号量
互斥量(Mutex) 互斥量表现互斥现象的数据结构,也被当作二元信号灯。一个互斥基本上是一个多任务敏感的二元信号,它能用作同步多任务的行为,它常用作保护从中断来的临界段代码并且在共享同步使用的资源。 Mutex本质上说就是一把锁,提供对资源的独占访问,所以Mutex主要的作用是用于互斥。Mutex对象的值,只有0和1两个值。这两个值也分别代表了Mutex的两种状态。值
2016-11-30 17:02:48 403
转载 正斜杠“/”与反斜杠”\”
目录基础知识使用说明编码注意相关知识历史问题 基础知识正斜杠,又称左斜杠,符号是"/"。反斜杠,也称右斜杠,符号是"\"。记忆方法:关于这两个的辨别记忆,可以想一想乒乓球的正手与反手打发。补充一个图更容易记住哪个是斜杠,哪个是反斜杠。 使用说明windows系统:反斜杠“\“用来表示目录;正斜杠“/
2016-11-30 16:12:15 23235
原创 指针函数和函数指针的区别
函数指针是一个指向函数的指针,而指针函数只是说明他是一个返回值为指针的函数。 函数也有地址,函数的地址是存储其机器代码的内存的开始地址。以前总也记不住指针函数和函数指针的区别,其实加上一个“的”就很容易区分: 指针的函数:指针为修饰词,函数才是主体,故指针函数本质为一个函数; 函数的指针:函数为修饰词,指针才是主体,故函数指针本质为一个指针。下面主要介绍函数指针:获取函数地址:
2016-11-30 15:10:56 657
转载 NULL, '\0',0 '0'的区别
如题,在程序中经常遇到NULL,和'\0',常常疑惑它们是什么关系,其实它们的值是一样的,只不过表现的形式不一样: 1、NULL; NULL 即空指针,在C和C++中的形式不一样,msdn上有如下的内容那个:#if !defined(NULL)&&defined(__NEEDS_NULL)#ifdef __cplusplus#define NULL 0#else#def
2016-11-29 15:39:04 302
原创 C++类知识总结
c++类1、初始化const或引用类型数据成员的唯一机会是在构造函数初始化列表中。2、使用成员初始化列表时成员初始化的次序:第一个成员首先被初始化、然后是第二个,依次类推。构造函数初始化列表为类的基类和成员提供初始值,它并不指定初始化的执行次序。首先初始化基类,然后根据声明次序初始化派生类的成员。3、派生类构造函数的要点:首先创建基类对象派生类构造函数应该通过成
2016-11-28 09:15:10 939
原创 c++数组易错点总结
c++数组1、只有在定义数组是才能使用初始化,此后就不能使用了,也不能将一个数组赋给另一个数组int cards[4] = { 3 , 6 , 8 , 10}; //okint hands[4] ; //okhand[4] = {5 , 6 , 7 ,9}; //error,只能在定义时初始化hand = cards;
2016-11-28 09:03:57 984
转载 深入理解C++的动态绑定与静态绑定的应用详解
为了支持c++的多态性,才用了动态绑定和静态绑定。理解他们的区别有助于更好的理解多态性,以及在编程的过程中避免犯错误。 需要理解四个名词: 1、对象的静态类型:对象在声明时采用的类型。是在编译期确定的。 2、对象的动态类型:目前所指对象的类型。是在运行期决定的。对象的动态类型可以更改,但是静态类型无法更改。 关于对象的静态类型和动态类型,看一个示例: class B{}class C
2016-11-28 08:41:13 621
Hadoop权威指南第3版中文带目录
2018-02-25
Writing Solid Code(编程精粹中文版).pdf
2018-01-18
面向对象的思考过程 原书第4版(中文高清)
2018-01-08
git内容推送到远程库时一直停留在如下界面,求高手指点
2015-07-26
TA创建的收藏夹 TA关注的收藏夹
TA关注的人