自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 资源 (3)
  • 收藏
  • 关注

原创 Python的randrange函数

#!/usr/bin/pythonimport random# 输出 100 <= number < 1000 间的偶数print "randrange(100, 1000, 2) : ", random.randrange(100, 1000, 2)# 输出 100 <= number < 1000 间的其他数print "randrange(100, 1000, 3) : ",

2016-05-31 23:03:47 9329 1

转载 词法分析器

词法分析MYSQLlex        客户端向服务器发送过来SQL语句后,服务器首先要进行词法分析,而后进行语法分析,语义分析,构造执行树,生成执行计划。词法分析是第一阶段,虽然在理解Mysql实现上意义不是很大,但作为基础还是学习下比较好。 词法分析即将输入的语句进行分词(token),解析出每个token的意义。分词的本质便是正则表达式的匹配过程,比较流行的分

2016-05-26 23:20:19 988

转载 企业系统的性能与扩展

企业应用需要以尽可能快的速度来存储并检索尽可能多的数据,在应用的性能管理中有两个重要的指标,它们分别是响应时间与吞吐量。其中响应时间越短,应用的响应度就越高,因此响应时间是衡量性能的指标;而扩展则指的是在保持响应时间较短的同时,提升系统的负载能力,因此吞吐量是可扩展性的衡量指标。响应时间与吞吐量“事务响应时间”是根据系统完成一个事务所花费的时间来计算的,因此包含下面这些种类

2016-05-25 14:22:34 514

转载 用Hadoop,你的数据真的够大么?

“你有多少大数据和Hadoop的经验?”他们问我。我一直在用Hadoop,但很少处理几TB以上的任务。我基本上只是一个大数据新手——知道概念,写过代码,但是没有大规模经验。接下来他们会问:“你能用Hadoop做简单的group by和sum操作吗?”我当然会,但我会说需要看看具体文件格式。他们给我一个U盘,里面有所有的数据,600MB,对,他们所有的数据。不知道为什么,我用pand

2016-05-24 22:41:47 1664 1

转载 有了这个列表,程序员不愁没练手的小项目了

我经常看有人发帖问关于项目点子的事,也看到了很多回帖,我自己也回了一些常见的项目。不过我觉得只列出三两个是远远不够的,因此就收集并这个项目列表,大家要找简单的编程项目学习练手的话,可以收藏并扩散本文。这些项目并不是论文级别的,只是想抛砖引玉让大家能从中受些启发。下面你们会看到 120 多个个项目构思,都是我通过头脑风暴得来的。我将其根据主题分成了10 个分类,但有些项目其实涵盖了不止一个主

2016-05-23 20:40:19 735

转载 VS2010静态编译生成.exe可执行文件

VS2010静态编译生成的.exe可执行文件,可以免安装在其他电脑直接运行 静态编译:就是在编译可执行文件的时候,将可执行文件需要调用的对应动态链接库(.so)中的部分提取出来,链接到可执行文件中去,使可执行文件在运行的时候不依赖动态链接库。  编译方式:第1种:设置:1、项目->配置属性->常规->MFC的使用:在静态库中使用MFC2、项目 -> 配置属性->

2016-05-23 14:29:42 452

转载 Spark安装与学习

Spark安装与学习      摘要:Spark是继Hadoop之后的新一代大数据分布式处理框架,由UC Berkeley的Matei Zaharia主导开发。我只能说是神一样的人物造就的神器,详情请猛击http://www.spark-project.org/        Created 2012-05-09        Modified 2012-08-13

2016-05-22 08:53:17 354

转载 程序运行完后不让窗口一闪而过

可能经常会遇到这样的情况,想要程序运行完后,窗口继续保留。VC或VS下常用的方法是在main函数退出前加一句:system(“pause”)这样的语句,但是这种做法有一个问题就是:在这样的情况下,其实程序并没有真正结束。也就是说main()函数并没有执行完。假设要看一下析构函数的自动调用,就看不到了。比如下面的例子#include#includeusing namespace st

2016-05-19 11:47:13 1479 1

转载 在主函数中调用其他文件内的函数

就是再写个头文件,对调用文件里的函数进行申明。再将头文件写在主函数所在的文件里。如下面所示://文件a.c#include "a.h"int display(int a,int b){coutreturn 0;}//文件a.h#include int display(int ,int );//文件main.c#include "a.h"int m

2016-05-19 11:44:14 15324 2

转载 一个函数使用另一个函数中的变量

有两种情况下可以:一、调用者通过被调用函数的返回值或形参(输出参数)来使用被调用函数中的变量的值.前提,必须在被调用函数执行完毕后.int max( int a,int b ){int z;if (a>b) z=a;else z=b;return z;}main(){int x;x=max(3,9); //x可使用到max函数的返回值z的值pri

2016-05-19 11:40:47 22644

转载 分析进程、线程的终止

PROCESS_ALL_ACCESS包含PROCESS_TERMINATE当需要终止进程时,需要是PROCESS_TERMINATE,因为他有终止的权限,PROCESS_ALL_ACCESS只有读写的权限。如果是有窗口的,使用spy++找出它的classname,或者,caption,假如,它的classname是MyProc;HWND hWnd;hWnd = Find

2016-05-19 11:35:34 3590

转载 封装和抽象

关注侧重点不同数据抽象,关注的是数据类型及作用于这些数据类型对象上的操作封装主要关注的是,这些操作是否对外部可见这个问题的原文《代码大全》在书中的第5章,而在第6章作者有更详细的介绍。虽然还是没有直接给出抽象与封装的直接定义。但是给出了它们关注的侧重点不同。6.1节---抽象数据类型(ADT)ADT是指一些数据以及对这些数据所进行的操作的集合。一个准则是,当

2016-05-18 14:32:17 1251

转载 用makefile脚本方式调用vs 2010 的nmake来编译工程的实例

1、准备代码main.c如下void main(){    printf("\r\n Hello Shanghai.\r\n");    return;}2、找到vs2010 安装目录 D:\Program Files\Microsoft Visual Studio 10.0\VC\bin      在该目录下创建makefile文件,文件名为m

2016-05-18 13:49:58 1935

转载 预处理、编译、连接、运行

1.预处理阶段:编译器以C文件作为一个单元,首先读这个C文件,发现第一句与第二句是包含一个头文件,就会在所有搜索路径中寻找这两个文件,找到之后,就会将相应头文件中再去处理宏,变量,函数声明,嵌套的头文件包含等,检测依赖关系,进行宏替换,看是否有重复定义与声明的情况发生,最后将那些文件中所有的东东全部扫描进这个当前的C文件中,形成一个中间“C文件”编译:编译时是进行语法检查、函数

2016-05-18 11:01:05 512

转载 重写、覆盖、重载、多态的区别的分析

override->重写(=覆盖)、overload->重载、polymorphism -> 多态 override是重写(覆盖)了一个方法,以实现不同的功能。一般是用于子类在继承父类时,重写(重新实现)父类中的方法。重写(覆盖)的规则:   1、重写方法的参数列表必须完全与被重写的方法的相同,否则不能称其为重写而是重载.   2、重写方法的访问修饰符一定要大于被重写方

2016-05-18 10:56:08 273

转载 linux grep命令详解

linux grep命令详解简介grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。Unix的grep家族包括grep、egrep和fgrep。egrep和fgrep的命令只跟grep有很小

2016-05-17 14:01:43 222

转载 c/c++ 结束进程

1.使用ExitProcess()结束进程     进程只是提供了一段地址空间和内核对象,其运行时通过在其地址空间内的主线程来体现的。当主线程的进入点函数返回时,进程也就随之结束。这种进程的终止方式是进程的正常退出,进程中的所有线程资源都能够得到正确的清除。除了这种进程的正常退出方式外,有时还需要在程序中通过代码来强制结束本进程或其他进程的运行。ExitProcess()函数的原型为:

2016-05-17 10:53:16 3434

转载 详解一道C++笔试题,考察重载、覆盖、多态

C++版看到的,说是面试宝典里的题目,考察重载、覆盖、多态等概念,比较有代表性。今天早上远程辅导 Yan Wang 同学学习 Qt 时还想到了这个题目,如果你能够正确理解这个题目,说明对于 C++ 中的函数重载、覆盖、虚函数、多态等有了正确的认识。然后呢,再来学习 Qt 就顺风顺水了。    题目是酱紫的:#include #include using namespace

2016-05-16 16:32:54 299

转载 ebp与esp讲解

一.概念分析经常看到下面这两句:pushl %ebp movl %esp,%ebp --------------------------------------------------------------------------------  esp是堆栈指针    ebp是基址指针 那两条指令的意思是 将栈顶指向 ebp 的地址  ----

2016-05-16 16:22:53 722

转载 对寄存器ESP和EBP的一些理解

PS:EBP是当前函数的存取指针,即存储或者读取数时的指针基地址;ESP就是当前函数的栈顶指针。每一次发生函数的调用(主函数调用子函数)时,在被调用函数初始时,都会把当前函数(主函数)的EBP压栈,以便从子函数返回到主函数时可以获取EBP。下面是按调用约定__stdcall 调用函数test(int p1,int p2)的汇编代码假设执行函数前堆栈指针ESP为0xAAAAAAA ;

2016-05-16 16:13:22 485

转载 关于new和delete

当你写下new和delete的时候,到底发生了什么事呢,让我们来做个试验看看。写一段小代码:class a{public: a() { foo(); } int foo() { return 0; } ~a() { bar(); } int bar() { return 1; }};int _tmain(int argc, _TCHAR* argv[]){ a* tmp = n

2016-05-16 16:09:22 473

转载 C++对象的内存分布和虚函数表

http://blog.sina.com.cn/s/blog_60e96a410100lirk.html

2016-05-16 16:05:17 329

转载 对于结构化异常处理(SEH)的进一步探索

对于结构化异常处理(SEH)的进一步探索本文关键字:SEH, _except_handler3, Windows, VisualC写本文的起因Matt Pietrek 关于结构化异常处理的文章 A Crash Course on the Depths of Win32 Structured Except

2016-05-16 14:32:21 944

转载 为什么寄存器比内存快?

计算机的存储层次(memory hierarchy)之中,寄存器(register)最快,内存其次,最慢的是硬盘。同样都是晶体管存储设备,为什么寄存器比内存快呢?Mike Ash写了一篇很好的解释,非常通俗地回答了这个问题,有助于加深对硬件的理解。下面就是我的简单翻译。原因一:距离不同距离不是主要因素,但是最好懂,所以放在最前面说。内存离CPU比较远

2016-05-16 10:44:42 329

转载 实例讲解 封装继承多态(三)

面向对象程序设计中的多态性是指向不同的对象发送同一个消息,不同对象对应同一消息产生不同行为。在程序中消息就是调用函数,不同的行为就是指不同的实现方法,即执行不同的函数体。也可以这样说就是实现了“一个接口,多种方法”。  从实现的角度来讲,多态可以分为两类:编译时的多态性和运行时的多态性。前者是通过静态联编来实现的,比如C++中通过函数的重载和运算符的重载。后者则是通过动态联编来实现的,在C

2016-05-13 11:13:03 943

转载 C++内嵌汇编(一):反汇编分析C++代码

Sam: 使用binutils-2.23.1这个软件中的小工具objdump -d *.o 可以对一个目标文件进行反汇编:)了解反汇编的一些小知识对于我们在开发软件时进行编程与调试大有好处,下面以 VS2008 环境下的 VC++ 简单介绍一下反汇编的一些小东西!1 、新建简单的 VC 控制台应用程序A 、打开 Microsoft Visual Studio 2008 ,选择主菜单 “

2016-05-13 10:35:16 5070

原创 vs2010反汇编

在调试状态下,debug——windows——disassembly或者ctrl+F11,vs2008里调试状态下alt+8也可以。主要介绍Visual Studio中的一些实用调试技巧。许多Visual Studio下的程序员,甚至一些很有经验的开发人员,都不知道这些技巧。希望这篇文章能帮你掌握这些技巧。它们都很简单,却能帮你节约大量的时间。  跳到当

2016-05-13 10:33:33 1965

转载 C++中的引用(&)

对于习惯使用C进行开发的朋友们,在看到c++中出现的&符号,可能会犯迷糊,因为在C语言中这个符号表示了取地址符,但是在C++中它却有着不同的用途,掌握C++的&符号,是提高代码执行效率和增强代码质量的一个很好的办法。在 c++学习提高篇(3)---隐式指针的文章中我详细介绍了在隐式指针&的用法,其实这两个概念是统一的。引用是C++引入的新语言特性,是C++常用的一个重要内容之一,正确、

2016-05-13 09:54:51 285

转载 类中成员函数的实现,放在类块里和外部实现的区别

class Weapon //兵器类{private: string _name; //兵器名 int _power; //威力值public: void show() { cout<< "名字:" << _name << ",威力值:" << _power <<endl; }; void setName(string name = "赤手空拳",

2016-05-12 16:38:38 9201 2

原创 实例讲解 封装继承多态(二)

一、封装:  封装是实现面向对象程序设计的第一步,封装就是将数据或函数等集合在一个个的单元中(我们称之为类)。被封装的对象通常被称为抽象数据类型。 封装的意义:  封装的意义在于保护或者防止代码(数据)被我们无意中破坏。在面向对象程序设计中数据被看作是一个中心的元素并且和使用它的函数结合的很密切,从而保护它不被其它的函数意外的修改。  封装提供了一个有效的途径来保护数据

2016-05-12 14:45:11 396

原创 java中new关键字和c++中的new有什么区别

java中new返回的对像引用,而c++中返回的是对像的实际地址。没有delete的原因是java有垃圾回收机制,当一个对像没有被引用时,系统会自动将其清理掉(也就是系统自动执行了delete)。创建对象:C++和Java的异同在标号为(1)的构造函数调用中,我们可以把u本身当作一个User对象。这个构造函数调用填充由u对象所占据的内存区域,如下

2016-05-12 14:40:19 6658 2

原创 构造函数和析构函数

#include #include using namespace std; class stud//声明一个类{ private://私有部分 int num; char name[10]; char sex; public://公用部分 stud(int n,const char nam[],char

2016-05-12 14:24:42 293

原创 实例讲解 继承封装多态(一)

1.#include#define PI 3.1415926;using namespace std;class Shape  //抽象类的  定义{public: virtual double GetArea()  = 0;  //纯虚函数 virtual double GetPerim()  = 0;  //纯虚函数};

2016-05-12 13:59:47 2787

原创 面向对象的三个基本特征(理解)

面向对象的三个基本特征是:封装、继承、多态。封装封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。继承面向对象编程 (OOP) 语言的一个主要功能就是 “ 继承 ” 。继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新

2016-05-11 15:04:48 1403

转载 Git详解之四 服务器上的Git

服务器上的 Git到目前为止,你应该已经学会了使用 Git 来完成日常工作。然而,如果想与他人合作,还需要一个远程的 Git 仓库。尽管技术上可以从个人的仓库里推送和拉取修改内容,但我们不鼓励这样做,因为一不留心就很容易弄混其他人的进度。另外,你也一定希望合作者们即使在 自己不开机的时候也能从仓库获取数据 — 拥有一个更稳定的公共仓库十分有用。因此,更好的合作方式是建立一个大家都可以访问的

2016-05-11 09:50:43 392

转载 Git详解之二 Git基础

Git 基础读完本章你就能上手使用 Git 了。本章将介绍几个最基本的,也是最常用的 Git 命令,以后绝大多数时间里用到的也就是这几个命令。读完本章,你就能初始化一个新的代码仓库,做一些适当配置;开始或停止跟踪某些文件;暂存或提交某些更 新。我们还会展示如何让 Git 忽略某些文件,或是名称符合特定模式的文件;如何既快且容易地撤消犯下的小错误;如何浏览项目的更新历史,查看某两次更新之间的

2016-05-11 09:49:25 441

转载 Git详解之一 Git起步

起步本章介绍开始使用 Git 前的相关知识。我们会先了解一些版本控制工具的历史背景,然后试着让 Git 在你的系统上跑起来,直到最后配置好,可以正常开始开发工作。读完本章,你就会明白为什么 Git 会如此流行,为什么你应该立即开始使用它。 1.1 关于版本控制什么是版本控制?我真的需要吗?版本控制是一种记录若干文件内容变化,以便将来查阅特定版本修订情况的系统。在本书

2016-05-11 09:48:36 576

转载 Git详解之三 Git分支

Git 分支几乎每一种版本控制系统都以某种形式支持分支。使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作。在很多版本控制系统中,这是个昂贵的过程,常常需要创建一个源代码目录的完整副本,对大型项目来说会花费很长时间。有人把 Git 的分支模型称为“必杀技特性”,而正是因为它,将 Git 从版本控制系统家族里区分出来。Git 有何特别之处呢?Git 的分支可谓是

2016-05-10 16:19:08 400

原创 git详解

Git详解之一:Git起步http://blog.jobbole.com/25775/Git详解之二 Git基础http://www.open-open.com/lib/view/open1328069733264.htmlGit详解之三 Git分支http://www.open-open.com/lib/view/open1328069889514.h

2016-05-10 11:01:38 255

转载 yum和apt-get的区别

一般来说著名的linux系统基本上分两大类: 1.RedHat系列:Redhat、Centos、Fedora等 2.Debian系列:Debian、Ubuntu等 RedHat 系列 1 常见的安装包格式 rpm包,安装rpm包的命令是“rpm -参数” 2 包管理工具 yum 3 支持tar包 Debian系列 1 常见的安装包

2016-05-09 14:33:12 228

VS2010 C++开发指导教程

2016-05-04

晓媛的鱼,人工鱼,论文+动画

晓媛的鱼,人工鱼,论文+动画人;晓媛的鱼,人工鱼,论文+动画;晓媛的鱼,人工鱼,论文+动画

2012-03-15

java题库系统

java题库系统。有代码,完整,调试过得可运行代码。也可以作为毕业用

2011-09-20

空空如也

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

TA关注的人

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