自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一梦一程-记录学习点滴

知其用,更知其理~~

  • 博客(40)
  • 资源 (8)
  • 收藏
  • 关注

原创 maven+mybatis+spring mapping下的xml文件没有编译到输出路径

maven+mybatis+spring在开发的时候,遇到如下错误:org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'xxxService': Unsatisfied dependency expressed through field 'xxxMapper

2017-04-05 14:54:17 3970 1

原创 Mysql错误:The server time zone value is unrecognized or represents more than one time zone

编程访问Mysql数据库时,报出时区错误如下:The server time zone value '�й�׼' is unrecognized or represents more than one time zone ...通常有以下两种解决方法:在数据库连接语句后添加?serverTimezone=UTC,即默认0时区,但是要注意,该语句需要跟在数据库连接语句的第一个位置,否则会报错,例如:

2017-04-05 14:34:55 4545

原创 SVN修改已经提交过记录的日志和作者

使用TortoiseSVN管理代码,对于已经提交的记录,可以修改提交作者和提交日志,不过会报如下错误:Repository has not been enabled to accept revision propchanges;ask the administrator to create a pre-revprop-change hook解决方法如下: - 打开VisualSVN -

2017-03-31 15:52:47 8564

原创 缓存框架Guava Cache部分源码分析

在本地缓存中,最常用的就是OSCache和谷歌的Guava Cache。其中OSCache在07年就停止维护了,但它仍然被广泛的使用。谷歌的Guava Cache也是一个非常优秀的本地缓存,使用起来非常灵活,功能也十分强大,可以说是当前本地缓存中最优秀的缓存框架之一。之前我们分析了OSCache的部分源码,本篇就通过Guava Cache的部分源码,来分析一下Guava Cache的实现原理。

2016-07-17 14:33:31 5772 1

转载 理解Java中hashCode的作用

如何理解hashCode的作用

2016-07-16 20:01:35 372

原创 向上/向下取整和四舍五入编程实现

在看Guava Cache的实现源码时,其中有个向上取整操作,它的源码如下:int segmentCapacity = initialCapacity / segmentCount;if (segmentCapacity * segmentCount < initialCapacity) {  ++segmentCapacity;}  关于向上取整、向下取整、四舍五入等操作,有不同的实现,效

2016-07-16 20:01:32 2748

原创 缓存框架OSCache部分源码分析

在并发量比较大的场景,如果采用直接访问数据库的方式,将会对数据库带来巨大的压力,严重的情况下可能会导致数据库不可用状态,并且时间的消耗也是不能容忍的,尤其对于某些获取起来比较昂贵的数据。在这种情况下,一般采用缓存的方式。将经常访问的热点数据提前加载到内存中,这样能够大大降低数据库的压力。  OSCache是一个开源的缓存框架,虽然现在已经停止维护了,但是对于OSCache的实现还是值得学习和借鉴

2016-07-16 20:01:29 1228

转载 线程池原理及创建(C++实现)

原文出处:http://www.cnblogs.com/lidabo/p/3328402.html本文给出了一个通用的线程池框架,该框架将与线程执行相关的任务进行了高层次的抽象,使之与具体的执行任务无关。另外该线程池具有动态伸缩性,它能根据执行任务的轻重自动调整线程池中线程的数量。文章的最后,我们给出一个简单示例程序,通过该示例程序,我们会发现,通过该线程池框架执行多线程任务是多么的简单。为什么需

2016-07-16 20:01:26 798

原创 C++中的虚函数、纯虚函数

C++最重要的特性就是多态,而多态,就主要通过虚函数实现的。具体的实现过程是:基类中的函数定义为虚函数,派生类发生覆盖(即函数名称、参数列表、返回值类型完全相同)的情况下,派生类中的函数也会自动变成虚函数,不论加不加virtual关键字。此时,基类与子类对象中都会存在一张虚函数表(因为含有虚函数),具体虚函数表的结构可以参照这篇文章:http://blog.csdn.net/haoel/artic

2016-07-16 20:01:23 334

原创 leetcode 二叉树后续遍历的递归和非递归实现

Given a binary tree, return the postorder traversal of its nodes' values.For example:Given binary tree {1,#,2,3},   1    \     2    /   3return [3,2,1]./** * Definition for a binary tree node. *

2016-07-16 20:01:20 326

原创 leetcode 二叉树中序遍历的递归和非递归实现

Given a binary tree, return the inorder traversal of its nodes' values.For example:Given binary tree {1,#,2,3},   1    \     2    /   3return [1,3,2]./** * Definition for a binary tree node. * s

2016-07-16 20:01:18 349

原创 leetcode 二叉树前序遍历的递归和非递归实现

Given a binary tree, return the preorder traversal of its nodes' values.For example:Given binary tree {1,#,2,3},   1    \     2    /   3return [1,2,3]./** * Definition for a binary tree node. * 

2016-07-16 20:01:15 864

原创 C++类的构造函数不能为虚函数的原因

1 C++类的对象构造的时候,首先申请一片内存,然后调用构造函数进行初始化;我们知道,存在虚函数的话,也会存在一个虚函数表vtable,而虚函数表示在什么时候产生的呢,当然是在调用构造函数之后产生的;那么问题来了,如果构造函数为虚函数,此时的内存是一片空白,不存在该虚函数表vtable,那么无法找到该构造函数;所以说,构造函数不能为虚函数。2 此外,如果有以下代码:class A{    A()

2016-07-16 20:01:12 359

原创 Merge Two Sorted Lists, 合并两个有序链表

/** * Definition for singly-linked list. * struct ListNode { *     int val; *     ListNode *next; *     ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public:    ListNode* me

2016-07-16 20:01:10 386

转载 MFC下在利用控制台输入输出 方便调试

MFC下利用TRACE语句可以很方便的打印调试信息,但是有些时候如果要打印另外的信息,为了分析数据的方便,不想与TRACE的信息混在一起。这个时候,利用控制台输出就是一个比较不错的捷径。虽然有很多局限性,比如,只能开一个控制台等等,但是,这个方法还是比较有吸引力,因为其使用就如同控制台程序一样,比读写文件少一个文件指针。使用方法如下,具体请参考MSDN。  AllocConsole();    

2016-07-16 20:01:07 3235

原创 MFC无标题栏对话框移动的处理方法

很多时候,为了界面的美观,我们会隐藏标题栏,而在客户区通过自绘模拟标题栏。但是这样处理,会导致窗体无法移动。下面提供几种移动方法:    1、采用欺骗的方式。即当鼠标点击客户区的时候,我们欺骗windows,让windows认为我们点击在了标题栏,这样,拖动过程就通过windows进行处理了。因此可以大大减少我们的代码量。具体方法如下:响应鼠标左键按下消息WM_LBUTTONDOWN,相应函数中,

2016-07-16 20:01:04 3493 2

转载 关于MFC中WM_MOUSEHOVER和WM_MOUSELEAVE消息的使用

默认情况下,窗口是不响应WM_MOUSELEAVE和WM_MOUSEHOVER消息的,所以要使用_TrackMouseEvent函数来激活这两个消息。调用这个函数后,当鼠标在指定窗口上停留超过一定时间或离开窗口后,该函数会Post这两个消息到指定窗口。使用方法:1.在对话框类中定义一个变量来标识是否追踪当前鼠标状态,之所以要这样定义是要避免鼠标已经在窗体之上时,一移动鼠标就不断重复产生WM_MOU

2016-07-16 20:01:01 1728

转载 CDC * pdc 指针 与 hdc 转换

1.CDC *pDC和HDC hdc有什么不同,类似的有CWnd *pWnd和HWnd?pDC是类指针HDC是windows句柄通过pDC获得hdc:HDC hdc=pDC->GetSafeHdc();通过hdc获得pDC:CDC *pDC=new CDC;pDC->Attach(hdc);2.hDC和CDC有本质区别HDC是WINDOWS的一种数据类型,是设备描述句柄。而CDC是MFC里的一个类

2016-07-16 20:00:58 1564

转载 API 根据句柄 获得进程可执行文件路径的几种方法

想获得进程可执行文件的路径最常用的方法是通过GetModuleFileNameEx函数获得可执行文件的模块路径这个函数从Windows NT 4.0开始到现在的Vista系统都能使用,向后兼容性比较好。第二种方法是GetProcessImageFileName函数,这个函数在Windows XP及其以后的系统中都能使用,使用此函数返回的路径不是通常的系统盘符,如"C:\...",而是驱动层的表示方

2016-07-16 20:00:55 2423

原创 vector删除操作 erase方法注意事项

vector使用十分方便,可以存放任意类型数据结构。有时候我们会在vector中存放对象指针等,在删除某个元素的时候,我们还需要释放相应的内存。本文主要谈一下erase方法,尤其是在循环体中使用erase方法,需要注意是否存在隐性问题。erase的函数原型有两种形式:iterator erase(iterator position);iterator erase(iterator first, 

2016-07-16 19:58:17 1499

原创 MFC使用Unicode字符集在网络编程接收数据乱码或不完整的解决办法

VC6.0中默认使用的是多字节编码,而从VS2005以后,默认使用的是Unicode字符编码方式,尤其在VS2013中还取消了对于多字节编码的支持,需要额外安装插件。如果使用多字节编码就不会遇到本文所说的问题,但是用Unicode字符编码方式也是有好处的,除了支持程序主题更美观,更重要的是统一编码标准。这或许就是vs中取消多字节编码的一个原因吧。       好,切入正题。在socket编程中,如

2016-07-16 19:58:14 2807

转载 latex 复杂表格(多行多列)的制作

%多行或多列合并的情况%(1)多行合并代码如下\documentclass{article}\usepackage{multirow}   %使用multirow必须加载该package\begin{document} \begin{table}[tbp]\centering\begin{tabular}{|ccccc|ccccc|}\hlineCase & Structural \ State

2016-07-16 19:58:12 25719

原创 latex 中图片或者表格跨两栏居中的方法

对于表格,在只需按照下面语句编写即可:\begin{table*}[htbp] %htbp为位置控制\centering其他内容\end{table*}对于图片同样的方法,即:\begin{figure*}\centering图片内容,同时这里可以包含多张图片,排版的时候将会跨两栏横排\end{figure}本文出自 “一梦一程-记录学习点滴” 博客,请务必保留此出处http://jincheng

2016-07-16 19:58:09 24580 1

原创 latex 表格中单元格换行,显示多行

除了使用multirow的方式(比较麻烦),更好地办法是用下面的语句,可以使得一个单元格中显示多行,再配合其它格式语句,就能使得表格非常美观。\newcommand{\tabincell}[2]{\begin{tabular}{@{}#1@{}}#2\end{tabular}}下面一个比较综合的例子:\begin{table*}[htbp]\centering\newcommand{\tabinc

2016-07-16 19:58:06 5528

原创 latex 表格列宽度固定的情况下让文字居中显示

在列宽后加入{|p{2cm}

2016-07-16 19:58:03 10314

原创 Latex设置字体大小及表格中的文字大小等

Latex中遇到表格超出半个分栏的情况,可以考虑将表格中的字体设小来解决,方法如下:\begin{table}[h]\tiny%此处将表格字体设置为tiny,也可以设置为其它大小\begin{tabular}\end{tabular}\end{table}Latex 设置字体大小命令由小到大依次为:\tiny\scriptsize\footnotesize\small\normalsize\

2016-07-16 19:57:58 13111

原创 使用类的成员函数作为API定时器的回调函数

有时候,我们在使用API定时器时,需要使用类的成员函数作为其回调函数,但是,编译器为了保护成员函数,编译是不能通过的。那么我们怎么才能使用类的成员函数作为API定时器的回调函数呢?我们可以嵌入一段汇编代码来绕过编译器的检查。举个例子:      假设我们一个类的成员函数定义为void CALLBACK EXPORT CTestDlg::TimerProc,那么我们在使用API定时器时如果直接这么写

2016-07-16 19:57:52 2385

转载 MFC中CPropertySheet与CTabCtrl的使用

一、控件的介绍MFC中封装了许多有用的类,CTabCtrl和CPropertySheet是其中两个比较常用的类型。CTabCtrl即Tab控件对应的类,Windows应用程序中大量使用了Tab控件。属性页对应的是CPropertySheet,你在桌面上右键鼠标弹出的显示对话框就是一个CPropertySheet类型的对象。事实上这类弹出的、类似“属性页”的窗口大部分都是CPropertySheet

2016-07-16 19:57:50 2174

原创 MFC中注册热键操作--以CHotKeyCtrl设置热键为例

使用CHotKeyCtrl为程序添加热键功能,进行主界面的显示隐藏,类似于老板键,具体操作如下:第一:获取设置的热键并使用RegisterHotKey进行热键的注册,代码如下://获取热键键值CHotKeyCtrl* photk=(CHotKeyCtrl*)GetDlgItem(IDC_HOTKEY1);WORD vkey,fsmoderfiers;photk->GetHotKey(vkey

2016-07-16 19:57:47 2042

原创 VS2008 fatal error LNK1000: Internal error during IncrBuildImage 解决方案

使用Visual Studio 2008编译链接程序的时候,遇到链接错误,错误信息如下:fatal error LNK1000: Internal error during IncrBuildImage一般有如下3中解决方案:第一:该问题仅仅在第一次编译的时候出现,重新编译就可以运行了;第二:去微软官方下载KB948127补丁程序(见附件,但大多数机器安装不上,本人的机器也无法安装);650) t

2016-07-16 19:57:44 660

原创 使用CFileFind类查找文件并获取文件图标

以CListCtrl为例,使用CFileFind类查找文件并获取文件的图标填充到CListCtrl中主要代码如下:int CTestDlg::OnInitDialog(void){//获取控件指针CListCtrl* plst_ctl=(CListCtrl*)GetDlgItem(IDC_LIST1);//IDC_LIST1为CListCtrl控件的ID//添加图标(将图标存放在CImag

2016-07-16 19:57:41 956

原创 MFC中对于剪切板的简单操作

以ASCII编码的文本为例:复制操作:char sc[]="要复制的文本";HGLOBAL hmem=NULL;if (OpenClipboard()) //是否成功打开剪帖板{    if (EmptyClipboard())//清空成功,则继续    {        hmem=GlobalAlloc(GHND,sizeof(sc));//memalloc strlen+1 \0

2016-07-16 19:57:39 1080

原创 使用ado遇到数据库中的NULL时的处理方法。

在使用ado编程访问数据库时,如果指定的列里的值为NULL的话,使用如下语句将会产生运行错误。CString temp = (char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("name");       解决方法有两种,第一就是在数据库里将允许为空取消勾选,当然这种方法并不好。第二种方法就是判断_variant_t是否为空,判断后,就可以根据自己

2016-07-16 19:57:36 1192

原创 Cannot Initialize Data Bindings 问题的解决方法

今天编程遇到一个问题。对话框使用了一个DataGrid控件,在初始化代码中也进行了初始化,但是运行却出现了这个提示:Cannot Initialize Data Bindings。后来发现是控件没有注册。    解决方法:运行,输入cmd,然后执行以下两个命令:regsvr32 MSDATGRD.OCX regsvr32 MSSTDFMT.DLL      这样就可以解决这个问题了。

2016-07-16 19:57:33 9331

原创 SQL Server 无法连接的几个解决方法

Sql server安装好了,可是有些人在安装后会遇到无法连接的情况,下面列举几种解决方法(建议使用windows认证方式来测试),基本上可以正常。      1、确保Sql Server服务已经启动。可以在运行中输入services.msc打开服务,如果没有启动,手动启动Sql Server这个服务。将启动类型设置为自动的话,以后可以省去人工启动的麻烦。绝大部分是因为这个原因导致的无法连接。 

2016-07-16 19:57:30 6550

原创 让MFC程序具有XP风格的按钮及界面

VC++6.0编译生成的MFC程序没有XP风格的界面,显得不是太美观,下面,我们可以采取两种方法来让其显示XP风格的界面。   第一种方法比较简单,只需要一个小小的文件就可以。但是有一个缺点,就是这个文件丢失的话,就会返回到原始的界面。   将以下代码粘贴在文本文件中,然后将扩展名改为你程序名字.exe.manifest(注意,扩展名不是.txt),然后重新编译链接你的程序,是不是变成xp的风格了

2016-07-16 19:57:28 1564

原创 scott登录提示:the account is locked

用SQL Plus登录时输入:conn scott/tiger 给出提示:           ERROR:           ORA-28000: the account is locked           解决方法: (1)以DBA的身份登录另一个用户,输入:      c:> sqlplus sys/sys as sysdba (2)为scott解锁,输入:        alter

2016-07-16 19:57:25 486

原创 字节对齐

计算机的内存空间都是按照字节来划分的,从理论上讲,对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定变量的时候经常在特定的内存地址访问,这就需要各类型的数据按照一定的规则在空间上排列,而不是顺序的一个接着一个排列,这就是内存对齐。       内存对齐是为了提高CPU对数据的访问速度(特别是在栈中)。对于对齐的内存地址,处理器仅需一次就可以访问到,而对于未对齐的内存地址,处理器需要访

2016-07-16 19:57:22 304

原创 error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int 错误的解决方法

一些函数定义中,在VC6中,如果没有显示的指定返回值类型,编译器将其视为默认整型;但是vs2008/vs2010不支持默认整型,解决这个问题不能修改每个没有显示指示返回值类型的函数地方,可以用排除4430来解决;具体的在打开project->BaseClasses properties->configuration->C/C++ ->Advance中禁用特定警告中排除4430即可。  650) t

2016-07-16 19:57:19 7290 2

原创 在使用VC++6.0常见问题“Error spawning cl.exe”的解决方法

很多朋友在安装VC++6.0后,无论编写多么简单的程序,点击编译或者链接后出现这样的一个错误提示:Error spawning c1.exe,很是郁闷650) this.width=650;" alt="" src="/neweditor/editor/images/smiley/3.gif" />。很多人想都没想选择重装VC++6.0,可是很多人重装后,又出现了同样的问题。总不能因为这样的一个小

2016-07-16 19:57:16 1679

斗地主MFC源代码

使用MFC开发的斗地主游戏,界面很美观,绘图处理比较到位,对于游戏编程具有一定的入门作用。

2013-05-15

plsqldev9 破解版

这个工具很有名,大家应该都知道,非常方便的数据库管理工具。

2012-11-12

QQ大号表情

qq大号表情,就是qq内自带的默认表情的大号版,很不错的。

2012-04-22

EditPlus破解版

EditPlus的破解版,在原始基础上增加汇编语言高亮显示的脚本。

2012-04-22

VC中文MSDN手册

MFC所有类库,每个函数,查找使用方法很方便。

2012-04-22

空空如也

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

TA关注的人

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