自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

likexin的专栏

ぺ可欣べ的BLOG

  • 博客(70)
  • 收藏
  • 关注

原创 在对自定义消息进一步学习!

 前几天遇到一个DEBUG运行正常,REALESE出错的情况,写了篇BLOG,感觉自己都懂了,今天在项目中还是自定义消息,居然又出错了。今天再次搞定,并加深了对其的认识。这次出错是想响应一个自己动态创建的CLISTCTRL的ITEMCHANGED消息。自己写了消息影射,DEBUG运行完全正确。当我晚上在REALESE上运行的时候发现错误。想都没想,一定还是原型的错误。其实原型所带的参数CSDN

2007-10-08 05:10:00 880

原创 让你动态创建的控件响应消息!

今天项目做到一半,发现代码已经很多了,总想着能不能在某些地方省略一些.于是发现到自己从控件派生出的几个类.我用他们动态创建出DIALOG中的元素.这样做是很麻烦,但没办法,因为希望自己的作品能够更出色,于是就这么做了.因为我实在没有找到一个更好的解决办法,也许是有,只是我不会.但随之而来的并不是定义时参数的烦琐,而是想要获取他们自己的通知时间.例如从CLISTCTRL中派生的空间,想要响应它自

2007-10-05 09:21:00 1460

原创 今天解决了的一个DEBUG运行正常RELEASE出错的问题!

今天正在做一个项目,进展顺利,但是编译成RELEASE版本运行却发现错误.自己弄了半天也没搞定.但最后还是看了一篇文章解决了.主要原因是因为DEBUG和RELEASE在解决函数掉用上的方式的不同.DEBUG是通过EBP来间接实现的.就象这样EBP+2 EBP+4 但在RELEASE下优化会省略 EBP 栈基址指针,这样通过一个全局指针访问栈.这样如果调用和实现方式不同就会使返回地址产生错误.比

2007-10-02 16:03:00 27994 2

原创 VC编写DLL几种方法的简介.

可欣动态连接库最大的特点就是能节省磁盘空间.当多个进程共享同一个DLL的时候,内存中只有一个DLL的代码.通过映射来使各个进程得以调用.1.用VC建立一个WIN32 DLL我们利用VC编写DLL有几种方法.如果用VC建立一个WIN32 DLL 工程.那这个工程就应该只导出C++的类或全局变量.和全局函数.方法就是在CPP文件中编写你的代码,为每个需要导出的元素进行导出办法是增加如下语句

2007-09-25 01:07:00 3919

原创 通过做小项目来深思软件工程!

这几天在做一个小项目. 几千行的代码.规模很小.但忽然自己却发现一个从没考虑过的问题.这么小的项目是不是也需要分析与架构哪.其实我们每一个人在开发项目的时候都会进行问题定义,需求分析,软件架构,软件构建,系统测试等等...只是随着项目的增大,这些工作就越正式.和我一样的菜鸟开发一些小项目的同时这些前期工作是在脑子里潜意识进行的.但是今天我做项目的时候遇到了一些逻辑上的麻烦,很难去把它想

2007-09-20 02:54:00 1245

原创 真的想抨击一下那些"批评家"--所谓的那些专家

也许自己是学习C++的.对他有一种爱恋.但我并不是说自己就一定会说C++是多么多么厉害,多么万能.我只是一个菜鸟,也许说的话很没分量,但我还是想说,那些说这语言不好那语言不好的专家们,你门的专家头衔是不是放错地方了,如果你们真的那么厉害,不如把中国的软件业搞上去,为什么在中国你们是一顶一的高手,为什么在国外的杂志和书刊上却从没见过你们的名字.每一种语言的诞生都有他的道理 ,都有他的长处,就象一

2007-09-14 20:43:00 1043

原创 辞职后的感想!

今天好轻松,我把老板给炒了,呵呵.也许是那会天天想3级跳,最终还是没在公司留住.公司给我的帮助很大,但我还是不习惯做自己不喜欢的事.自己回家的路上想了很多.学编程8个多月,也许上班是为了证明自己什么吧.至少是有能力上班了.在我离开作为的时候,边上的高手告诉我项目管理说让你单独做BASELIB的优化,哎,早说好不好,我都已经要走了.呵呵,其实就是早说我还是会走的在公司里没做出什么真正的成果,到是

2007-09-12 05:23:00 2613 1

原创 项目心得-C++的命名空间你真的会用了吗?

说到命名空间,很多初学者会马上联想到IOSTREAM里的COUT  CIN  ENDL 他们是每本教程最早出现的关键字,也许你会知道命名空间的基本知识,能够理解命名空间的写法,定义,以及特殊的用法.但能够把命名空间很好的运用到软件项目上除了你要有很好的基础 还要对命名空间的存在的理由要理解透彻!今天在单位加班,发现我所做的项目太多的函数定义了同样类型的变量,要是内置类型我也就睁只眼闭只眼了

2007-08-18 17:30:00 6480 4

原创 项目心得-通用模板并不一定通用!

今天的项目进展顺利,跟踪程序发现项目中对文件读取的函数调用的是一个继承自VECTOR类的operator [] ,通过自觉认为模板确实具有很好的通用性,但如果把只需要实现一些简单功能的类继承于VECTOR,那么类不但从空间上会有很大开销,效率也一定会有所下降.于是自己编写了一个可变长的数组类, 通过PROFILE,发现性能的确有了可观的提高!所以在我们选择标准库的时候 一定要考虑是否有必要自己写一

2007-08-13 23:25:00 1359

原创 项目心得-PDF文件格式深入了解!

工作一个星期了,今天的项目终于算是告一个段落了,虽然是2个高手而不是自己的力量完成的, 但却学到了很多东西,首先是PDF文件格式.读了一天的PDF文件说明书,全是英文,看的眼睛都花了,上网查却没有查到什么太多的东西,全是一些转载,重复那几篇看了无数遍的的PDF说明.于是还是决定自己来看一看,真正的把它弄明白,简单的说一下我所学到的东西.PDF文件有几种类型的对象,BOOL   整型 实数型

2007-08-11 00:11:00 1507

原创 项目心得-驯服古怪的PROFILE!

转贴请注明出处!今天是工作的第2天,项管第一天就让我接触PROFILE 测试一个程序,来得知各个函数的执行次数和时间.我曾经在看书的时候对这种测试程序有一些了解, 知道它是为了了解程序的性能屏障,并针对他们进行优化.昨天做了一天却没有一点收获,到了家自己写了个简单的测试程序.并对工程进行设置.网上没有太多的PROFILE使用的文章,太多太多的转载让我失望而且无奈.于是自己终于通过努力在昨天

2007-08-02 23:33:00 1408 1

原创 第一次面试成功了!

昨天早上接到电话得知被录用了,没有太多的喜悦.到是发现面试成功率很高.呵呵.100%今天开始上班,开始努力!不要忘记除了工作还要坚持自己的学习!  

2007-08-01 23:53:00 971

原创 今天开始看SQL必知必会了!

前两天买了这本书,看了一半了快,感觉还不错.对于以后能做为工具书使用! 

2007-07-29 04:58:00 1021

原创 人生中第一次面试!

曾经在几个地方从事了不同的工作.但都是朋友介绍.连面试都没面试.也许面试不能代表实力.但面试却还是要很多技巧的.10个小时后,我要为我人生中的第一个真正工作面试.到现在也许是因为自己经历的很多坎坷似乎覆盖了我紧张的心情. 为什么一点紧张感都没有那.也许是因为我真正学习编程半年来的态度导致的.这半年来,我虽然也迷茫过,烦躁过,但还是看了我人生中1/2的书,说来也许夸张.但想想自己 什么时候喜

2007-07-28 01:23:00 1206 1

原创 ubuntu 的安装!

 这两天为了使用LINUX 盘也买了,文章也看了不少,但还是没成功.后来终于把UBUNTU安装成功了!安装UBUNTU时也遇到了很多问题.下面对我的问题说出自己的解决办法首先下载ubuntu-7.04-alternate-i386.ISO然后下载引导文件,因为我们要硬盘安装.menu.lst  initrd.gzvmlinuzgrldr首先在C:/BOOT.INI

2007-07-27 21:12:00 936

原创 缓式评估的实现!

我们知道所有程序都是在操作内存.在底层的说就是通过内存来知道要做什么.知道做什么后在从内存中来抽取所要操作的数据,在把结果放到指定内存中!我们随便的一句代码a=b+0;    //int  a,b; 并对a  b赋值.如果是内置类型不用多说编译器采取的是所谓急式评估.就是说见到这样的语句不论上下文如何一定会做写什么.(ADD,  MOV)但如果下面接着在有一句这样的代码.a=1

2007-07-25 04:11:00 1264

原创 深入分析异常机制!

 我们知道C++和C最大的不同就是它更好的支持面向对象程序设计,封装,多态,继承,异常,命名空间.通用型编程等等.对于面向机制为什么说是更好的支持哪.是因为用C同样可以编写面向对象程序设计.我们都知道C函数可以通过结构体和函数指针来设计一些低级的类.但C++提供的CLASS则更好的维护了数据的隐藏.而不是想C那样任何数据都要通过函数来操作.C++是通过数据和方法的封装来实现对数据的操作.至

2007-07-18 07:46:00 1028

原创 对自定义的C++内存管理的一些总结!

说到内存管理就一定是与堆内存所联系,我们知道,自动变量是由栈来实现的,而堆内存是由程序员来控制管理的.当我们有这样一段代码:void * p=new   TYPE NAME(constructor);我们就申请了一块内存.这块内存对于程序员只是透明的一个占有sizeof(TYPENAME)大小的内存块.并在该内存上构造了这个类型的对象. 如果使用placement new实现原理也

2007-07-16 16:13:00 1569

原创 深入浅出理解设计模式中的工厂类--虚构造函数!

最近在学习软件工程.了解了软件从无到有的一个概括性知识!从最开始的问题定义 ,到需求分析,在到软件架构,在到软件构建,而软件构建中又分为很多的小项,如详细设计,编码,单元测试,系统测试,  还有就是后期的维护.才发现自己平时开发项目直接从自己的想法开始做是多么的无知.怪不得自己总返工,有时修改量大的我也只能对自己说就这样吧.从这点就可以知道,好的前期工作是多么的重要.正好最近在学软件工

2007-07-14 04:24:00 1658

原创 通过汇编角度理解虚函数!

今天通过汇编角度在次理解一下虚函数.工作环境VC6方法DEBUG 跟踪MEMORY测试程序代码 虽然是测试程序但希望大家还是养成良好习惯 不要污染命名空间测试代码:#include "iostream"using std::cout;using std::endl;class a{  int m_a;public:  a(int x):m_a(x) {}  virtua

2007-07-10 02:55:00 3543 5

原创 终于通过测试搞明白operator delete了!

最近写了一个简单的学生管理系统的类  在内存管理的地方遇到了点麻烦,现在解决了,对operator delete有了更深入的了解!先看一下代码.头文件#ifndef KEXIN#define KEXIN#include #include #endifnamespace mystd{  class cstudent   {  private:    char * pname;

2007-07-06 21:14:00 4388

原创 避免动态分配内存后因异常而导致的内存泄露

 当在一个函数中动态创建一个对象时如果在delete之前发生异常就会导致内存泄露,原因很简单,因为程序没有处理delete,如果是局部变量,则会保证局部变量的释放.所以我们需要定义一个类来管理NEW来的内存通过在函数中定义局部对象,在异常发生的时候就会自动释放.也就是说自动调用他的析构函数.我们可以在它的构造函数中去NEW一个我们要得对象,而类中保留一个数据成员存放NEW返回的指针,析构时DELE

2007-06-17 03:51:00 1440

原创 总结一下我所掌握的虚函数和多态 (望高手指点!)

C++也学了一段时间了,C++比较让人混乱的除了复杂的标准库和算法.基础部分里大概应该属指针 引用和函数传参的问题了,对于这些头疼的问题,我们只能多看 多写,多练,没有更好的办法. C++的多态性就和这些因素有所关系.今天我来说说自己所掌握的关于多态的知识!我假设现在的你已经了解C++基于对象的部分,也就是你会写一个类,明白类所产生的对象中包含的是他的数据成员(无虚函数的时候).而类的成员

2007-06-11 22:30:00 1029

原创 mfc消息映射防真!

最近在学习MFC底层,通过看书受到启发,决定抛开书自己来独立写一下主要核心代码!先定义一个MYMSGSTRUCT消息结构体和一个MYMSG宏.  struct mymsgstruct...{UNIT mymeesage;LONG  (*ptr)( HWND hwnd,      UINT uMsg,      WPARAM wParam,   LPARAM lParam  );}

2007-06-11 04:25:00 950

原创 今天很高兴!

今天二级C考试成绩出来了,当你打开我的成绩时告诉我过了的时候,对于成绩并没有多少喜悦,但真的很爱你!谢谢你.宝宝! 

2007-05-29 03:14:00 881

原创 送给所有初学编程的人! (让我们理智的学习编程)

学习编程半年了,时间过的很快,刚开始的时候信心百倍,现在却发现什么都不会.自己和菜鸟这个词是脱不了勾了!越来越多的年轻人爱上了编程,太多的人走了弯路,在这里我把我的一些想法说出来,如果大家觉得合理就支持一下,不合理很愿意和大家交流首先我是一个比较内项的人,编程的路上似乎没有太多的交流,因此也没遇上他多的高手,这一点大家别和我一样,多交流永远是个好的学习方法!选择学习的方向,很多人似乎连

2007-05-28 03:12:00 1357 3

原创 vc生成ASM文件的方法!

Project->Setting->C/C++->Category->Listing Files->lISTING file type:选No Listing以外的即可 

2007-05-19 21:09:00 3665

原创 深入理解系统调用与库函数调用!

    今天对系统调用和库函数调用进行了一次总结!在这里把心得写出来,如果有什么错误希望大家能指出    我们假设UNIX系统 库函数有C编译器提供 , 而你有用汇编编写C库函数的能力!    首先要知道宏观上知道系统调用和库函数的区别:系统调用由操作系统提供,我门假设用汇编编写的    而库函数是编译器提供    而我们知道系统调用是会通过一种陷阱的机制陷入内核而执行相应的处理程

2007-05-06 15:41:00 2356

原创 c->asm tc内部机制

我们用TC编写一段简单的代码!看看生成的汇编代码是什么!    #include "stdio.h"sum(int x,int y)...{    return x+y;}int aa;int bb=1;main()...{   int a=1;   int b=2;   int c=sum(a,b);   printf("c=%d",c);}     好,我们知道汇编里函数内的变

2007-05-04 16:42:00 1674

原创 汇编16位部分学习总结!

    今天把汇编16位部分学完了,随着学习的深入,似乎找到了我学习汇编想知道的答案,但还并不完整.    基础的指令,DOS调用,BIOS中断就不多说了,我的BLOG中有一篇响应的中断一览表,大家有需要可以去参考.    PSP 驻留程序也不多说了,高级汇编语言技术也并不难接受,只要大家有一点高级语言的基础,看明白还是不难的,我想说说模块化程序设计部分的段的定义,简单的说一下供C调用的过

2007-05-03 20:10:00 2946

原创 中断向量表/DOS/BIOS系统功能调用

    DOS功能调用

2007-05-02 14:06:00 8124 1

原创 初学汇编的知识总结!

  最近刚刚接触输入输出,对中断,I/O的理解还是很乱,在这里做一个总结  我们通常的MOV是针对主存的,和CPU中的寄存器,在80X86中I/O地址和内存不是统一编址,所以对主存和I/O的操作就不是同一指令,在I/O中用IN,OUT.   固化在ROM上的BIOS的数据区中包含了各个中断处理程序,和I/O端口地址,而中断向量存储在内存开始的1K内存中  DOS功能调用是建立在BIOS

2007-05-01 03:26:00 1403 1

原创 DEBUG全过程跟踪!

最近刚刚接触汇编,建议大家和我一样能通过DEBUG更好的理解代码.这样不但能调试程序,而且使你对内存以及寄存器也能够随时掌握他的内容,更有助于你巩固反汇编出的指令的作用!就不多写了直接来个简单点的,因为主要是针对和我一样的初学者,代码量太大未必是件好事(对于理解起来)代码如下:     X*16+Y结果存放到ZZZdseg segmentxxx  dw 1234hyyy  dw 567

2007-04-23 11:11:00 2213 1

原创 VC之美化界面篇

 白乔原创:VC之美化界面篇转载地址:http://www.vcer.net/showTip.jsp?tipid=1046595482643本文专题讨论VC中的界面美化,适用于具有中等VC水平的读者。读者最好具有以下VC基础: 1. 大致了解MFC框架的基本运作原理; 2. 熟悉Windows消息机制,熟悉MFC的消息映射和反射机制; 3. 熟悉OOP理论和技术; 本文

2007-04-22 22:31:00 1483

原创 汇编中的菜鸟问题解决方案!

 最简单的一段代码,我却没有能力看到我想要的"HELLO"第一天碰RADASM 就让我郁闷了半天,上网搜解决方法却很难找到,自己琢磨着编译通过 跟着构建.但就是运行时没有HELLO后来终于发现当DEBUG加载这个.EXE时在运行可以显示.但有时只能运行一次,关掉CMD,在运行又不行了.只有第一次能运行3到4次,(关掉CMD,从新打开CMD运行也可以).剩下的几次都是只能在DEBUG后运行一

2007-04-22 02:58:00 884

转载 学习汇编前你应该知道的知识

第一讲 学习汇编前你应该知道的知识1 汇编需要什么工具和程序,到哪里下载?  目前阶段,汇编程序仅需要两个程序就够了。 masm.exe,link.exe。二者可由http://www.20cn.org/~unique/Download/Tool/masm.rar下载,前者是编译程序,后者是链接程序。  另外,为了验证和调试程序,还需要一个程序debug.exe,该程序由windows本身就提供,

2007-04-14 01:45:00 1391 1

原创 初学汇编之笔记!

    开始学习汇编2天了,开始时还不太理解这门语言.感觉从高级语言过度到汇编还是很不适应的,汇编语言和高级语言最大的不同就是能更直接的操纵硬件.这也是汇编语言能声生生不息的原因吧!     第1天的学习可以说没有什么效果,脑袋完全乱了,可能没有作好从高级语言到低级语言过度的心理准备!第2天继续看发现开始明白了,之前的疑问也都逐渐找到了答案.例如各个寄存器既然有各自专门的用途,为什么都可以存取

2007-04-06 10:17:00 957

原创 深入了解"地址对齐"!

      我们在程序设计时例如VC的结构体中都接触到了地址对齐这个概念, 我的BLOG中已经把一篇很不错的文章转贴到我这里了,大家有兴趣可以看看,在这里就不多说了.      现在用存储单元的角度来说明一下他的原因.      一块存储空间的起始地址假设为000000H,我们应该知道存储单元以字节为单位,就是说有8位.一个字很容易就应该知道是2字节,双字就是4字节,假如我门要存储1字节的

2007-04-04 00:46:00 1765

原创 MFC函数速查大全

MFC函数书本速查+API函数大全   [ 日期:2006-08-16 ]   [ 来自:本站原创 ] 基础类 CObject AssertValid p3 Dump p3 IsSerializable p4 Serializable p4 GetRuntimeClass p4 IsKindOf p5 CCmdTarget FromIDispatch p5 GetIDispatch p6 IsRe

2007-03-29 00:50:00 11764 6

转载 CString 操作指南

CString 操作指南 原文出处:codeproject:CString Management通过阅读本文你可以学习如何有效地使用 CString。  CString 是一种很有用的数据类型。它们很大程度上简化了MFC中的许多操作,使得MFC在做字符串操作的时候方便了很多。不管怎样,

2007-03-23 16:47:00 945

空空如也

空空如也

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

TA关注的人

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