自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(77)
  • 资源 (3)
  • 问答 (1)
  • 收藏
  • 关注

原创 C++虚继承的实现方式与内存布局

虚基类表中存放了虚基类的成员在派生类内存空间中的偏移量......

2014-11-13 17:58:18 2324

原创 bitset存储多种状态

随着系统规模的扩大,会出现越来越多的状态标识,如果每一个状态标识对应一个数据库字段,数据库表会越来越庞大,维护成本高。利用BitMap的思想按位管理状态,是一种简洁的办法,并且具有良好的可扩展性。一、数据库设计CREATE TABLE `object` ( `id` int COMMENT 'ID', `status` int NOT NULL COMMENT

2017-05-19 13:55:05 1203

原创 工程优化记录

最近有时间优化手头的工程,看着之前的代码,简直惨目忍睹。一年之后重新写博客,就从记录这次工程优化开始。1. spring @RequestBody用法优化前代码:@RequestMapping(value = liveOpen, method = RequestMethod.POST, produces = "application/json;charset=UTF-8") p

2017-03-08 20:15:21 724

转载 eclipse debug模式启动tomcat 报异常ClassNotFoundException

转自:http://www.educity.cn/wenda/350039.html今天在做项目的时候,发现项目在Run as --> Run on server 的时候能正常运行 而在Debug as -->Debug on server 的时候却不能正在运行 出现类似以上的异常但是项目的部署 没有错误  而报出异常ClassNotFoundException,本来使得正常跑

2016-05-05 20:04:28 2557 2

原创 已知压栈序列,判断合法的弹出序列

问题描述:输入两个整数序列,第一个表示栈的压入顺序,判断第二个序列是否为该栈的弹出序列(假设压栈的所有数字均不相等)。例如:序列1,2,34,5是压栈序列,那么序列4,5,3,2,1就是一个合法的弹出序列,而4,3,5,1,2则不可能是合法的弹出序列。问题出自《剑指offer》面试题22。解题代码:思路和书中讲诉类似:如果下一个弹出元素正好是栈顶元素,则直接弹出。否则把

2015-10-03 23:38:27 810

转载 centos 配置php开发环境(eclipse PDT+Zend Debugger)

转自:http://blog.csdn.net/yang1982_0907/article/details/39026295一、环境说明操作系统:CentOS 6.4 x86_64Java:jdk-1.7.0_51二、安装PHP在Shell中运行以下命令:yum install -y php httpd 注意:在CentOS 6.4系统上通过yum安装的PH

2015-07-07 21:01:38 1354

转载 shell中$(( ))与$( )还有${ }的区别

原文地址:http://blog.zol.com.cn/2322/article_2321763.html$( )与` `(反引号)在bash shell中,$( )与` `(反引号)都是用来做命令替换(command substitution)用的。$ echo the last sunday is $(date -d "last sunday" +%Y-%m-%d)

2015-07-06 10:08:26 512

转载 CSRF 跨站点请求伪造

转自:http://www.cnblogs.com/hyddd/archive/2009/04/09/1432744.html一.CSRF是什么?  CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSRF/XSRF。二.CSRF可以做什么?

2015-06-26 10:46:32 2452

原创 gcc编译报错:程序中有游离的‘\357’‘\273’‘\277’等

'去掉utf-8 BOM:set nobomb'保留utf-8 BOM:set bombgcc编译报错:程序中有游离的‘\357’‘\273’‘\277’等造成的原因主要有两个:1. 程序(*.c,*.h)中使用了中文的标点符号(全角),比如;,},+。改成英文的标点半角符号就行了。甚至有时候空格也会出现类似错误,删掉该空格 重新输入。

2015-06-08 22:31:40 3894

转载 vector排序问题<unresolved overloaded function type>

要对vector中的自定义类型进行排序,首先需要提供一个函数bool comp(const Interval & a, const Interval & b) 来定义类型的排序准则 然后调用std::sort(intervals.begin(),intervals.end(),comp)  写了几个小的测试用例也都通过了,但是当集成在类中的时候编译遇到问题,Line 30: no ma

2015-06-08 11:31:10 2541 1

原创 GDB No symbol "XXXXX" in current context

这几天在把windows下的工程移植到centOS下的时候,发现gcc编译不过,有三点原因:1、gcc相比VS,对C++标准的遵循更为严格,有些不符合标准的写法在VS下能过,但在gcc下则报错。比如:在头文件中声明类A的成员函数时,gcc下不能带有A::,又如初始化fstream时,gcc下第一个参数必须是const char *,而不能是string等等;2、由于centOS已有的gcc

2015-05-30 18:42:15 6869

原创 STL的hashtable默认支持的模板类型

《STL源码剖析》的5.7.7 hash function一节中介绍了中定义了数个现成的hash函数,全都是仿函数。这些hash函数支持的模板类型包括:char*, const char*, char, unsigned char, signed char, short, unsigned short, int , unsigned int, long, unsigned long。这些不同类型的

2015-04-26 11:46:06 849

转载 在 C/C++ 语言中特定的宏

原文地址:http://blog.csdn.net/dafan/article/details/5781491__FILE____LINE____DATE____TIME____FUNC__ __FUNCTION__  在Visual Studio 2005中,默认情况下,此特性是激活的,但不能与/EP和/P编译选项同时使用。请注意在

2015-04-24 10:53:27 493

转载 C++字符串拷贝与缓冲区溢出

对于常用的字符串拷贝函数,常用的有:Ansi版本如下:strcpy, strncpy, strcpy_s, strncpy_s, StringCbCopyUnicode版本为:wcscpy,wcsncpy,wcsncpy_s,wcsncpy_s,StringCbCopyW其中最后一个为Windows的API,其余为c运行时函数。这些函数完成的功能是一

2015-04-11 16:23:11 4239

原创 虚函数和虚基类混合的情况

class A {public: char k[3]; virtual void aa() {}};class B0 : public A {public: char j[3]; virtual void aa() {}};class B1 : public A {public: char j[3]; virtual void aa() {} virtual vo

2015-04-06 17:07:41 574

原创 派生类的指针绑定到基类的对象(编译通过,但结果不可预知)

多态是面向对象中最重要的特性。在C++中多态的实现是通过带有虚函数的基类的指针或引用绑定到派生类的对象上来体现的。如果反过来,派生类的指针或引用绑定到积累的对象上有会有什么结果呢?首先这种做法很可能是没有实际意义的,但是编译却能通过(至少在VS2012下能过)。下面通过一个例子来看看运行结果:class base {public: base(int x) : a(x) {} virt

2015-04-06 14:28:37 912

转载 Socket send函数和recv函数详解

1.send 函数int send( SOCKET s, const char FAR *buf, int len, int flags );      不论是客户还是服务器应用程序都用send函数来向TCP连接的另一端发送数据。客户程序一般用send函数向服务器发送请求,而服务器则通常用send函数来向客户程序发送应答。    该函数的第一个参数指定发送端套接

2015-03-11 21:27:40 1461

转载 关于VC预定义常量_WIN32,WIN32,_WIN64

VC2012 下写 Windows 程序时,有时需要判断编译环境。在之前的文章《判断程序是否运行在 Windows x64 系统下。》里说过如何在运行期间判断系统环境,但在编译时如何判断?  MSDN 里说,VC 有 3 个预处理常量,分别是 _WIN32,_WIN64,WIN32。这三个常量如何使用呢?看起来简单,其实是很困惑的。  在 Win32 配置下

2015-03-08 22:18:33 5276

原创 VS2012开发的项目移植到WinXP下

最近要将一个项目移植到xp下,但在xp下运行exe文件后,总是报错说XXX.exe is not a valid win32 application。但输出的的确是win32 release版本的exe。解决办法如下:1、安装VS2012 update 12、安装VS2012 update 43、重启VS,打开项目,右键项目->properties->Configuration P

2015-03-03 10:29:21 1212

原创 关于size_type

由string类类型和vector类类型定义的类型,用以保存任意string对象或vector对象的长度,标准库类型将size_type定义为unsigned类型.string::size_type它在不同的机器上,长度是可以不同的,并非固定的长度。但只要你使用了这个类型,就使得你的程序适合这个机器。与实际机器匹配。string::size_type从本质上来说,是一个整型数。关键是由

2015-02-28 10:23:56 1022

原创 leetcode -- Largest Number

原题:Given a list of non negative integers, arrange them such that they form the largest number.For example, given [3, 30, 34, 5, 9], the largest formed number is 9534330.Note: The result ma

2015-02-21 21:04:18 849

转载 boost-文件路径操作filesystem

Boost.Filesystem 库为对路径、文件和目录进行查询和操作提供了可移植的工具,已经被C++标准委员会接纳包含到TR2中。编译使用Boost.Filesystem 库之前要先编译它,请参考《Boost的编译》头文件#include 所有Boost.Filesystem库的内容都处于名空间boost::filesystem之内。认识basic_path类在B

2015-02-11 14:34:52 6545

转载 vim中C++环境配置 ctags+taglist

设置vim语法高亮显示和自动缩进      1、配置文件的位置在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:“.vimrc”。例如,/root目录下,通常已经存在一个.vimrc文件。       2、设置语法高亮显示1) 打开vimrc,添加以下语句来使得语法

2015-02-11 10:59:39 1774

转载 svn代码回滚命令 svn revert

取消对代码的修改分为两种情况: 第一种情况:改动没有被提交(commit)。这种情况下,使用svn revert就能取消之前的修改。svn revert用法如下:# svn revert [-R] something其中something可以是(目录或文件的)相对路径也可以是绝对路径。当something为单个文件时,直接svn revert something就行了;

2015-02-10 18:04:42 18540

转载 C++ Boost 学习资源列表

文档书籍下载Boost DocumentationBoost代码下载   优秀网站导航Boost官方网站Boost中文站Boost Consulting  专题资源报告Linux伊甸园- STL/boost专区CSDN-Boost系列专题   个人博客推荐

2015-02-09 10:16:21 961

转载 VS中各种C运行时库的区别

各种C运行时库的区别 编译器链接选项: Visual C++编译时到底哪个C运行时库联入程序取决于编译选项,选项告诉编译器应用程序想使用什么版本的C标准程序库。与标准程序库有关的选项:/ML、/MLd、/MT、/MTd、/MD、/MDd /ML对应单线程静态版的标准程序库(libc.lib);/MT对应多线程静态版标准库(libcmt.lib

2015-02-05 14:11:31 3218

原创 linux下动态链接库(.so)的显式调用和隐式调用

进入主题前,先看看两点预备知识。一、显示调用和隐式调用的区别        我们知道,动态库相比静态库的区别是:静态库是编译时就加载到可执行文件中的,而动态库是在程序运行时完成加载的,所以使用动态库的程序的体积要比使用静态库程序的体积小,并且使用动态库的程序在运行时必须依赖所使用的动态库文件(.so文件),而使用静态库的程序一旦编译好,就不再需要依赖的静态库文件了(.a文件)。

2015-02-04 17:25:31 26753 3

原创 visual studio 2012下的配置记录

最近做的windows下的项目涉及到对VS的一些零散配置,记录如下:1、要让vs2012下创建的工程支持winXP,需要下载update 3或以上的更新包。安装完后,在properties->configuration properties->general->platform tools下选择Visual Studio 2012 - Windows XP (v110_xp),这样输出的可执行

2015-01-09 16:37:21 864

原创 修复损坏的虚拟机文件(vmx)

今天运气真TMD的被,在vmvare里面装win7 64的虚拟机,vmvare居然默认安装在C盘,结果各种环境配好后,C盘占用满了,win7 down掉了,说vmx不是有效的虚拟机文件,关键是重要文件在里面,幸好网上有修复vmx文件的方法:修复方法:    本方法仅适用.vmx文件损坏而其他文件完好无损的情况。    举例说明:虚拟机名为XP,虚拟机目录为E:\XP\,配置文件

2015-01-07 16:21:52 5031

原创 不要随意混用string和C风格字符串

最近在参与一个前人做了一半的项目,可能是由于之前开发人员并不固定,大家的编码风格不同,本来是个C++的项目,里面却出现了C和C++风格混乱的代码。这里并不是说C和C++熟优熟劣,而是觉得实际项目中应该选定一种编码风格,如果是用C,那就坚持用C,如果选择了C++,那就坚持C++的封装原则。不应该一会C++的风格,一会又是C的风格。       也许大家会说C++本来就是兼容C的,有什么不可呢?我

2014-12-27 19:04:32 1636

原创 运行时找不到.so文件

在路径/home/mike/testlib/下有一个mylib.c文件和mylib.h文件,用如下命名制作为共享库(.so文件):g++ -c mylib.c -fPIC -o mylib.og++ mylib.o -shared -o mylib.so编译通过。在路径/home/mike/test/下有一个test.c文件要使用mylib.so,先将mylib.so文

2014-12-25 11:14:59 3698

转载 ANSI编码和Linux下的mbtowc

原文地址:http://blog.sina.com.cn/s/blog_4723adba0100hnb4.html本文阐述了在linux下使用标准C库函数mbtowc进行多字节和宽字节转化的方法,以及一些诡异的转化错误的产生原因及解决方法。 一、ANSI编码简述“ANSI编码”不同于ANSI(American National Standards I

2014-12-22 22:31:29 3136 1

转载 C++标准转换运算符const_cast

原文地址:http://www.cnblogs.com/ider/archive/2011/07/22/cpp_cast_operator_part2.html前面讲了C++继承并扩展C语言的传统类型转换方式,最后留下了一些关于指针和引用上的转换问题,没有做详细地讲述。C++相比于C是一门面向对象的语言,面向对象最大的特点之一就是具有“多态性(Polymorphism)”。要想很好的使

2014-12-17 17:44:04 565

转载 解释:《深度探索C++对象模型》对NRV优化的讨论

原文地址:http://blog.csdn.net/zha_1525515/article/details/7170059感谢作者!大纲: 函数返回局部对象的拷贝的一般实现方式。 NRV(Named Return Value)优化。 NRV优化触发的疑问。一、函数返回局部对象的拷贝的一般实现方式比如有这么一段函数定义:

2014-11-10 21:52:24 1985

原创 EK中fromCharCode和parseInt的配合使用

基于web的漏洞攻击的第一步通常是:在landing page中通过<script>标签下的JavaScript脚本引入一些恶意链接......

2014-11-10 20:30:18 1908

原创 python文件操作

一、python中对文件、文件夹操作时经常用到的os模块和shutil模块常用方法。1.得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd()2.返回指定目录下的所有文件和目录名:os.listdir()3.函数用来删除一个文件:os.remove()4.删除多个目录:os.removedirs(r“c:\python”)5.检验给出的路径是否是一个文

2014-10-24 20:51:14 1200

转载 LIB和DLL的区别与使用

LIB和DLL的区别与使用原文地址:http://www.cppblog.com/amazon/archive/2009/09/04/95318.html 共有两种库:一种是LIB包含了函数所在的DLL文件和文件中函数位置的信息(入口),代码由运行时加载在进程空间中的DLL提供,称为动态链接库dynamic link library。一种是LIB包含函数代码本身,在编译

2014-10-21 20:22:28 570

原创 python中的lambda表达

C++中的lambda表达式与C++11加入标准库,是一个简短的匿名的可调用对象,编译器会将其转化为一个匿名类的对象。lambda表达式的最大特点就是简短灵活,调用方便。它不需要处理很复杂的逻辑,通常只包含一两句简短的代码。python作为一种优雅简洁的脚本语言自然不会错过这种机制。python中的lambda表达式形式如下:

2014-10-05 11:43:45 2188

原创 extern和static修饰全局变量的区别

extern static修饰全局变量的区别

2014-09-29 13:42:04 9314 1

转载 STL---hash_map

1 数据结构:hash_map原理 这是一节让你深入理解hash_map的介绍,如果你只是想囫囵吞枣,不想理解其原理,你倒是可以略过这一节,但我还是建议你看看,多了解一些没有坏处。hash_map基于hash table(哈希表)。 哈希表最大的优点,就是把数据的存储和查找消耗的时间大大降低,几乎可以看成是常数时间;而代价仅仅是消耗比较多的内存。然而在当前可利用内存越来越多的情况下,用空间

2014-09-23 15:02:38 792

matrix C++

C++实现矩阵的基本运算,包括:求逆,转置,矩阵乘法,矩阵数乘。代码支持模板实例化,矩阵中的元素可以使任意数值型。封装了两个类:Matrix类和UI类,Matrix类实现了相应运算,UI实现输入,支持从文件输入和从键盘输入两种输入操作。

2014-10-20

exceptional c++ 与 more exceptional c++ 英文版

英文版 C++经典书籍 英文版看了也还行,主要是能锻炼自己,豆瓣评分8.4 加油

2014-09-08

常用的dos命令 csdn下载

文档中包含一些常用的dos命令,如:cd、dir、edit、type、ping等,方便用户用dos操作系统进行操作。

2011-03-14

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

TA关注的人

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