自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Autocad降价-国产CAD的崛起

tocad降价-国产CAD的崛起司宣布在中国大陆将其列产品降价,幅度高达80%,业界一片哗然,犹如投下一颗重磅**,掀起惊涛骇浪!但是,我们可以清楚地看到,过这些年坚持不懈的努力,目前国产CAD软件确实已到了可以替代进口CAD软件的水平,而且,在满足用户的个性化、专业化需求方面,在加强中国化的产品特色和服务特色方面,都有很大的提高,包括做出了许多创新,使国产CAD软件的竞争力越来越强,用户越来

2014-12-26 14:20:14 659

转载 Objective-c 代理模式

Objective-c 代理模式(delegate)  一、什么事代理模式?        代理模式是在oc中经常遇到的一种设计模式,那什么叫做代理模式呢? 举个例子:有一个婴儿,他本身不会自己吃饭和洗澡等等一些事情,于是婴儿就请了一个保姆,于是婴儿和保姆之间商定了一个协议,协议中写明了保姆需要做什么事情, 而保姆就是这个代理人,  即:婴儿和保姆之间有个协议,保姆继承

2014-07-29 00:11:19 493

转载 IOS中 Block简介与用法(一)

Block简介:Block的实际行为和Function很像,最大的差别是在可以存取同一个Scope的变量值。Block实体形式如下:^(传入参数列){行为主体};Block实体开头是“^”,接着是由小括号所包起来的参数列(比如 int a, int b, int c),行为主体由大括号包起来,专有名字叫做block literal。行为主体可以用return回传值,类型会被

2014-06-06 16:05:26 511

转载 Objective-C内存管理教程和原理剖析(四)

系统自动创建新的autorelease pool在生成新的Run Loop的时候,系统会自动创建新的autorelease pool(非常感谢网友hhyytt和neogui的提醒)。注意,此处不同于xcode在新建项目时自动生成的代码中加入的autorelease pool,xcode生成的代码可以被删除,但系统自动创建的新的autorelease pool是无法删除的(对于无Garb

2014-05-09 19:20:49 414

转载 Objective-C内存管理教程和原理剖析(三)

@property (retain)和@synthesize的默认实现在这里解释一下@property (retain) ClassB* objB;和@synthesize objB;背后到底发生了什么(retain property的默认实现)。property实际上是getter和setter,针对有retain参数的property,背后的实现如下(请参考附件中的memman-g

2014-05-09 19:20:11 399

转载 Objective-C内存管理教程和原理剖析(二)

口诀与范式1. 口诀1.1 谁创建,谁释放(类似于“谁污染,谁治理”)。如果你通过alloc、new或copy来创建一个对象,那么你必须调用release或autorelease。换句话说,不是你创建的,就不用你去释放。例如,你在一个函数中alloc生成了一个对象,且这个对象只在这个函数中被使用,那么你必须在这个函数中调用release或autorelease。如果你在一个

2014-05-09 19:19:26 361

转载 Objective-C内存管理教程和原理剖析(一)

前言初学Objectice-C的朋友都有一个困惑,总觉得对objective-C的内存管理机制琢磨不透,程序经常内存泄漏或莫名其妙的崩溃。我在这里总结了自己对objective-C内存管理机制的研究成果和经验,写了这么一个由浅入深的教程。希望对大家有所帮助,也欢迎大家一起探讨。此文涉及的内存管理是针对于继承于NSObject的Class。基本原理Objective-

2014-05-09 19:18:03 435

转载 有return的情况下try catch finally的执行顺序

结论:1、不管有木有出现异常,finally块中代码都会执行;2、当try和catch中有return时,finally仍然会执行;3、finally是在return后面的表达式运算后执行的(此时并没有返回运算后的值,而是先把要返回的值保存起来,管finally中的代码怎么样,返回的值都不会改变,任然是之前保存的值),所以函数返回值是在finally执行前确定的;4、finally

2014-04-03 15:34:55 525

转载 同步与异步 阻塞与非阻塞

文章一:关于同步和异步的解释,在以前的文章中也提到过,但是没有这么全。进程同步用来实现程序并发执行时候的可再现性。一.进程同步及异步的概念1.进程同步:就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。也就是必须一件一件事做,等前一件做完了才能做下一件事.就像早上起床后,先洗涮,然后才能吃饭,不能在洗涮没有完成时,就开始吃饭.按照这个定义,其实绝

2014-03-26 09:36:01 501

转载 Oracle的锁表与解锁

--kill session语句alter system kill session'50,492';--以下几个为相关表SELECT * FROM v$lock;SELECT * FROM v$sqlarea;SELECT * FROM v$session;SELECT * FROM v$process ;SELECT * FROM v$locked_object;

2014-02-17 18:26:05 522

转载 Oracle导出表(即DMP文件)的两种方法

方法一:利用PL/SQL Developer工具导出:菜单栏---->Tools---->Export Tables,如下图,设置相关参数即可:方法二:利用cmd的操作命令导出,详情如下(备注:方法二是转载网上的教程):1:G:\Oracle\product\10.1.0\Client_1\NETWORK\ADMIN目录下

2014-02-12 18:08:31 441

转载 MFC六大关键技术之消息映射与命令传递

MFC六大关键技术之消息映射与命令传递         题外话:刚开始学视窗程序设计的时候,我就打印了一本Windows消息详解,里面列举了各种已定义消息的意义和作用,共10多页,在编程的时候翻翻,有时觉得很受用。我发觉很多编程的朋友,虽然每天都面对消息,却很少关注它。C++程序员有一个通病,很想写“自己”的程序,即每一行代码都想自己写出来。如果用了一些库,总希望能完全理解库里的类或函

2013-10-30 17:05:47 504

转载 MFC六大关键技术之永久保存(串行化)

MFC六大关键技术之永久保存(串行化)先用一句话来说明永久保存的重要:弄懂它以后,你就越来越像个程序员了!如果我们的程序不需要永久保存,那几乎可以肯定是一个小玩儿。那怕我们的记事本、画图等小程序,也需要保存才有真正的意义。对于MFC的很多地方我不甚满意,总觉得它喜欢拿一组低能而神秘的宏来故弄玄虚,但对于它的连续存储(serialize)机制,却是我十分钟爱的地方。在此,可让

2013-10-30 17:02:34 539

转载 MFC六大关键技术之动态创建

MFC六大关键技术之动态创建动态创建就是运行时创建指定类的对象,在MFC中大量使用。如框架窗口对象、视对象,还有文档对象都需要由文档模板类对象来动态的创建。我觉得这是每个MFC的学习者很希望理解的问题。初次接触MFC的时候,很容易有这样的迷惘。MFC的几大类不用我们设计也就罢了,但最疑惑的是不用我们实例化对象。本来最直观的理解就是,我们需要框架的时候,亲手写上CFrameWnd

2013-10-30 16:57:53 753

转载 MFC六大关键技术之运行时类型识别(RTTI)

MFC六大关键技术之运行时类型识别(RTTI)运行时类型识别(RTTI)即是程序执行过程中知道某个对象属于某个类,我们平时用C++编程接触的RTTI一般是编译器的RTTI,即是在新版本的VC++编译器里面选用“使能RTTI”,然后载入typeinfo.h文件,就可以使用一个叫typeid()的运算子,它的地位与在C++编程中的sizeof()运算子类似的地方(包含一个头文件,然后就有一个熟

2013-10-30 16:57:21 485

转载 MFC六大关键技术之初始化过程

MFC六大关键技术之初始化过程我并不认为MFC减轻了程序员们的负担,MFC出现的目的虽然似乎是为了让程序员不用懂得太多就可以进行视窗编程,但本人在MFC里徘徊了很久很久(因为那时没有书本详细介绍MFC的原理),毫无收获。可能朋友们会说,怎么一定要了解MFC的具体呢,“黑箱”作业不行吗?这不是微软的初衷吗?  不行!!!如果这样,我宁愿永远不选择MFC!在学电脑之前,本人学习的东西大

2013-10-30 16:56:27 574 1

转载 PeekMessage 与 GetMessage

当消息队列中存在消息时, PeekMessage就返回TRUE, 最后一个参数可以为:PM_REMOVEPM_NOREMOVE表示是否在接收到消息的时候从消息队列中删除它们。与GetMessage的不同:PeekMessage只要有消息的时候, 这相依返回TRUE, 即使消息是WM_QUIT, 没有消息的时候, 它不会等待,而是立即返回,并返回F

2013-09-26 13:25:27 455

转载 如何正确的关闭 MFC 线程

前言:  近日在网上看到很多人问及如何关闭一下线程,但是我看网上给出的并不详细,而且有些方法还是错误的。小弟在此拙作一篇,不谈别的,只谈及如何正确的关闭MFC的线程,至于Win32和C RunTime的线程暂不涉及。一.关于MFC的线程  1.MFC的线程有两种,一种称为Work线程,一种称为UI线程。一般情况下Work线程与UI线程的区别主要在于UI线程有消息队列(并不是有没有界

2013-09-26 10:02:56 415

转载 SendMessage是否投递到消息队列

1、当一个线程向该线程所建立的窗口SendMessage消息时,它只是调用指定窗口的消息处理过程,并不将消息入队列 (图1-2)2、当一个线程向另一个线程所建立的窗口SendMessage时,该消息要追加到接收消息线程的发送消息队列,然后发送消息的线程进入等待状态,接收消息的线程处理完该消息后,由系统唤醒发送消息的线程,这时发送线程继续进行 3、一个线程的消息队列实际上分为四种不同

2013-09-25 10:43:47 1317

转载 消息与事件的区别

我们通常说:“某一件事发生了”和“向什么发送某一个消息”。比如在桌面上单击鼠标时,某一件事发生了,Windows首先知道这件事的发生,然后使用函数SendMessage向桌面发送一个消息,证明有某件事发生了。这就是“事件驱动、消息处理”的原理。 事件是一个动作——用户触发的动作。   消息是一个信息——传递给系统的信息。         事件与消息的概念在计算机中较易混

2013-09-24 09:50:52 658

转载 创建UI线程并正确传递参数

UI 线程是由CWinThread派生类控制的,这个派生类和CWinApp极为类似,实际上CWinApp也是一个UI线程,他是应用程序的主线程,一般我们所说的UI线程,是指除主线程之外的界面线程。 具体创建方法:1.创建一个CWinThread的派生类CUiTread22.在CUiTread2类的InitInstance函数中建立自己的界面,注意必须设置CWinThread类的m_

2013-09-23 14:16:01 875

perl编程实例 代码注释详细

读取Input.TXT中内容,输出结果到Output中

2012-10-11

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

TA关注的人

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