摘要:
Most of life is a gamble. Very many of the things we bendover backwards to do involve taking some risk. In many cases,we go to great lengths to get a new job, to engage in anew activity, to go into new business or to embark on anew pursuit with no idea of the consequences of our actions. From the time when we first begin to make friends with opposite sex, to when we start dating and going steady, till we finally take the plunge and get married, few of us realize that we are gambling all along. N 阅读全文
摘要:
今天读文献时学到的几个短语,看着挺有用就把它们记下来了。 1、teeth gnashing and head scratching 咬牙切齿,挠头,形容很烦躁 例:Resolving problem like this requiring many hours of teeth gnashing and head scratching. 2、nuts and bolts 具体细节 例:In this section, we look at the real nuts and bolts of this problem. 3、One size fits all 一招吃遍天下 阅读全文
摘要:
前几天,有几个朋友问我考系统设计师有什么方法,想想已经四年了,我是03年考的,那个时候叫高级程序员,结果很幸运,一次考过了,过了就过了,也没有去想它,到现在还没有考一次系分(系统分析师)呢,说来惭愧。今天就写个心得吧,也算是对自己的一个总结。但是有一点,不是为了考试而考试,其实个人觉得软考还是不能够充分体现出一个人的真实水平,尤其是动手能力。所以大家不要以为过了高程就怎么怎么样了,还是要多动手,多实践为重。 首先我简单介绍一下高级程序员考试,高级程序员全称是“全国软件资格与水平考试——高级程序员级”,其大纲称“通过本级考试的合格人员能按照软件需求规格说明书进行软件设计和编制程序,具有相当于工程师的实际工作能力和业务水平”。现在已经改称“系统设计师”了。 高级程序员考试不是考编程,而是考功能设计。这点对于复习来说是十分重要的。看看这些年的试题,上午主要是以基础知识考查为主,下午特别是以考功能设计为主。所以复习时要特别注意相关的能力的培养。在这篇文章中,我不想介绍具体知识和能力的提高,而是从方法上介绍我的心得,具体的知识解答等问题,可以看其他相关的文章。下面, 阅读全文
摘要:
前言: 最近,有几个朋友反映句柄的概念很难理解,下面我就把我对句柄的理解写出来,大家可以参考一下,如有什么不对的地方,肯请来函指正。 正文: 《Michrosoft Windows 3 Developer's Workshop》(Microsoft Press,by Richard Wilton)一书中句柄的概念是这样的:在Windows环境中,句柄是用来标识项目的,这些项目包括:模块(module)、任务(task)、实例(instance)、文件(file)、内存块(block of memory)、菜单(menu)、控制(control)、字体(font)、资源(resource),包括图标(icon),光标(cursor),字符串(string)等、GDI对象(GDI object),包括位图(bitmap),画刷(brush),元文件(metafile),调色板(palette),画笔(pen),区域(region),以及设备描述表(device context)。 在《Windows 编程 阅读全文
摘要:
在Word中有时我们要用到次方以及下标(如103+2,a1,a2等等)那么如何输入呢? 当我们需要输入次方时,同时按下ctrl键和shift键和+=键,这时光标就会变短并在上半行闪烁,我们叫它处于上半行输入状态。这时我们就可以输入了,其实不光是次方,其它字母,字符及汉字都可以,只不过是在上半行显示罢了。当我们再次同时按下ctrl键和shift键和+=键后,光标又恢复整行输入状态。 当我们需要输入下标或在下半行输入时,我们只需同时按下ctrl键和+=键,这时光标处于下半行输入状态,我们就可以输入下标了,还可以输入汉字等。当我们再次同时按下ctrl键和+=键,光标又恢复整行输入状态。 这是我今天无意中发现的,记下。 阅读全文
摘要:
最近MSN老是登陆不了,出现:“0x81000370错误”,卸载安装了多次都是这样,然后GOOGLE的网页搜索里到处找,就发现了下面的解决方法。 可能有许多原因导致不能登录到 .NET Messe nger Service或在登陆时出现种种错误(例如:“0x81000370错误”)。这些问题通常可以用下面几个方法之一解决: 1.你的电脑上的“日期/时间属性”是否设置正确:双击时间,检查日期和时间是否正确设置。 2.如果你的帐号和密码没有在MSN中保存,你需要确认你输入的帐号和密码是正确的(请注意大小写字母及帐号的后缀)。 3.禁用您浏览器中的“自动检测”设置。对于 Internet Explorer 用户,请单击 IE“工具”菜单、单击“Internet 选项”、单击“连接”选项卡、单击“局域网设置”按钮、然后清除“自动检测设置”框。 4.清除IE cache和Cookies:打开Internet Explorer浏览器,按工具菜单,然后选择“Internet 选项”,点击“删 阅读全文
摘要:
当我们用Application Wizard生成一个新的项目时,MFC会自动为我们产生不少的程序文件,那么这些文件都是干什么用的呢?在这里,我把它们向大家介绍一下,希望对一些初学VC的朋友有些帮助,老鸟们就不用浪费时间了,呵呵! 其实生成项目完成之后,我们会在项目目录里面发现一个readme.txt文件,项目所生成的程序文件在这里都有介绍,不过一般都是英文的。Application Wizard产生项目的同时,也展现了MFC机制为我们打下的程序框架,更为我们提供了用以扩展的程序。 依据不同的选项,产生的文件也有所不同,以下是Application Wizard产生的标准程序文件(假设项目名称为ExMFC),大致可以分为以下几类: ·工作区文件、项目文件和make文件 ·应用程序源文件和头文件 ·资源文件 ·预编译头文件 ·按可选项增加的AppWizard文件 阅读全文
摘要:
今天,一个同事遇到了一个非常奇怪的问题,他的程序(C#)运用了Hyper-Threading技术,系统用的是Windows 2000 SP4,当程序运行时会随机的抛出一个异常,而且这个bug很不容易reproduce,最后动用了公司几个高手的力量,才找到原因。 原来,Hyper-Threading技术不是所有的系统都能很好的支持的,Windows 2000所有版本都不能很好的支持Hyper-Threading技术,如果是在Windows 2000下开发,最好在System BIOS Setup program中将Hyper-Threading禁掉。 Intel官方网站上是这样描述的: Operating System Support Microsoft* Windows* Operating System Based PCs The following desktop operating systems include optimizations for HT Technology and ar 阅读全文
摘要:
今天在工作中遇到一个问题,如何将一个string类型转成byte[]? 这种问题就属于知道了就及其简单,不知道就够你忙活半天的那种。其实只要一个语句就OK了: byte[] byteArray = System.Text.Encoding.Default.GetBytes( str ); 怎么样,够简单吧? 反过来也是一样,把byte[]转成string: string str = System.Text.Encoding.Default.GetString( byteArray ); 其实,在System.Text.Encoding class中,还有很多其它有用的方法,像GetChars,从一个byte[]转成一个char[],等等,可以参考MSDN。 阅读全文
摘要:
病毒名称:灰鸽子变种MXN(Backdoor.Gpigeon.mxn) 病毒类型:后门程序 危害程度:四星 中毒症状:灰鸽子并没有消失而是转入地下更疯狂地制作变种,本周警惕该MXN变种,它会自己动态添加开机启动选项,对用户电脑实施远程控制,纪录键盘、偷窥隐私。 解决办法:密切注意启动项是否被不明程序篡改,及时升级杀毒软件,有不明出站程序访问网络时应立即予以拦截。 阅读全文
摘要:
我们在做.Net Class Library项目时常常会遇到这样的问题,我想生成一个dll供其它程序使用,但在我的项目里,又需要引用一些其它的reference,像ActiveX控件或其它dll,而这些控件或dll又没有strong name,不能写入到GAC(Global Assembly Cache)中,因而,在注册使用你的dll时,就必须带上这些引用的控件或dll,才能完成注册。然而,这并不是我们需要的,我们只想提供一个dll给人家用就行了,为什么还要带上一堆的控件或dll呢?别人也不愿意这样。那么,有什么办法解决这个问题呢? 正好现在做的这个项目就是这种情况,看了一下网上的资料也不多,于是将自己的解决方法share一下,有什么不好的地方,恳请指正。 大家都知道,在.Net中,如果你试图将一个dll写入到GAC中,那么除了你的dll项目要使用strong name以外,你的项目中用到的其它的控件或dll都需要有strong name,否则,当你注册你的dll时,会提示缺少dependency。这一点让人很烦,但应该有它的好处,利于版 阅读全文
摘要:
静态构造函数是C#的一个新特性,其实好像很少用到。不过当我们想初始化一些静态变量的时候就需要用到它了。这个构造函数是属于类的,而不是属于哪里实例的,就是说这个构造函数只会被执行一次。也就是在创建第一个实例或引用任何静态成员之前,由.NET自动调用。 class SimpleClass { // Static constructor static SimpleClass() { // } } 在使用静态构造函数的时候应该注意几点: 1、静态构造函数既没有访问修饰符,也没有参数。因为是.NET调用的,所以像public和private等修饰符就没有意义了。 2、是在创建第一个类实例或任何静态成员被引用时,.NET将自动调用静态构造函数来初始化类,也就是说我们无法直接调用静态构造函数,也就无法控制什么时候执行静态构造函数了。 阅读全文
摘要:
什么是接口?其实,接口简单理解就是一种约定,使得实现接口的类或结构在形式上保持一致。个人觉得,使用接口可以使程序更加清晰和条理化,这就是接口的好处,但并不是所有的编程语言都支持接口,C#是支持接口的。注意,虽然在概念上,C#接口类似于COM接口,但他们的底层结构是不同的。那么,我们来看一下如何声明和使用接口。 声明接口 声明接口在语法上和声明抽象类完全相同,例如这里有一个银行账户的接口: public interface IBankAccount { void PayIn(decimal amount); bool Withdraw(decimal amount); decimal Balance { get; } } 注意:接口中只能包含方法、属性、索引器和事件的声明。不允许声明成员上的修饰符,即使是pubilc都不行,因为接口成员总是公有的,也不能声明为虚拟和静 阅读全文
摘要:
在设计模式中,有一种叫Singleton模式的,用它可以实现一次只运行一个实例。就是说在程序运行期间,某个类只能有一个实例在运行。这种模式用途比较广泛,会经常用到,下面是Singleton模式的两种实现方法: 1、饿汉式 public class EagerSingleton { private static readonly EagerSingleton instance = new EagerSingleton(); private EagerSingleton(){} public static EagerSingleton GetInstance() { return instance; } } 2、懒汉式 publ 阅读全文
摘要:
在学习C++的继承时,我们经常会被访问属性搞混,也不容易记忆,对于初学者来说,就更加不易理解了。那么怎样才能把它记住并且不容易忘呢?那就是在理解的基础上去记忆,大多数书上对这一块的说明往往都是三大段文字,不晕也被绕晕了,那么只有你理解了,把它总结提炼成自己的语言,就一切都OK了。 阅读全文