自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

jsjwql专栏

Stay foolish Stay hungery

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

原创 SQL Server 2008 安装1605问题

安装SQL Server 2008的时候碰到如下问题"MsiGetProductInfo 无法检索 Product Code 为“{8794697B-6E43-45F1-835A-128E6E9C2BCC}”的包的 ProductVersion。错误代码: 1605。"解决方法参考这篇文章http://www.windowsvalley.com/fix-sql-server-s

2012-04-08 15:40:02 5505 2

原创 定义Extern变量

In one of your source files, you need to declare and define the variable in file-scope, outside of any functions. For example:int foo;

2011-08-31 09:23:48 684

转载 C++虚函数表解析

<br />C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。 <br />关于虚函数的使用方法,我在这里不做过多的阐述。大家可以看看相关的C++的书籍。在这篇文章中,我只想从虚函数的实现机制上面为大家 一

2010-11-06 15:02:00 785

转载 Object-C 入门

<br />大部分有一点其他平台开发基础的初学者看到XCode,第一感想是磨拳擦掌,看到 Interface Builder之后,第一感想是跃跃欲试,而看到Objective-C的语法,第一感想就变成就望而却步了。好吧,我是在说我自己。<br />如果你和我一样,对苹果相关的开发:Mac OS X或是iPhone有兴趣,但是第一时间看到Objective-C就会头疼并伴有发烧症状的话,疗效比较好的快速治疗方法是阅读本文。大概花二十分钟左右,而且绝不无聊的时间,你就会对Objective-C有那么一点点了解,

2010-10-23 20:24:00 10045 1

原创 Effective C#

<br />Effective C# 翻译(36)

2010-10-07 21:08:00 647

原创 数据库专题

表的主键与外键理解T-SQL:数据库&表的创建、修改、删除

2010-09-26 13:44:00 518

原创 自动化工具

Perfect Automation Free to try...Perfect Automation helps automate routine operations such...point is tight integration of various automation...it easy to automate common operati

2010-05-25 13:32:00 746

转载 MFC 消息类型

Message  Mapstruct AFX_MSGMAP  //消息映射表{AFX_MSGMAP*  pBaseMessageMap;   //基类消息映射表的指针;AFX_MSGMAP_ENTRY*  lpEntries;    //消息入口表的指针;};struct AFX_MSGMAP_ENTRY   //消息映射入口表{UINT  nMessage;    //消息;UINT 

2008-08-01 10:26:00 820

原创 函数指针

http://blog.csdn.net/braveroc/articles/745774.aspxhttp://ly4cn.cnblogs.com/archive/2005/11/28/286185.htmlhttp://ly4cn.cnblogs.com/archive/2005/12/17/299007.htmlhttp://ly4cn.cnblogs.com/archive/2006/

2008-05-23 16:20:00 612

原创 Inline 函数

                                  Inline 函数1.   规则一、一个函数可以自已调用自已,称为递归调用(后面讲到),含有递归调用的函数不能设置为inline; 2.   规则二、使用了复杂流程控制语句:循环语句和switch语句,无法设置为inline; 3.   规则三、由于inline增加体积的特性,所以建议inline函数内的代码应

2007-09-26 14:10:00 1149

转载 C++程序中不同的函数调用方式

                                      C++程序中不同的函数调用方式在C语言中,假设我们有这样的一个函数:int function(int a,int b)调用时只要用result = function(1,2)这样的方式就可以使用这个函数。但是,当高级语言被编译成计算机可以识别的机器码时,有一个问题就凸现出来:在CPU中,计算机没有办

2007-09-25 11:15:00 2147

转载 C++ 如何支持属性

                                                C++ 如何支持属性  属性,是面向对象程序设计中不可缺少的元素,广义的属性是用来描述一个对象所处于的状态。而我们这篇文章所说的属性是狭义的,指能用“=”操作符对类的一个数据进行get或set操作,而且能控制get和set的权限。        先看一下代码: #include

2007-09-25 10:44:00 1300

原创 由一道面试题引发的思考

                           由一道面试题引发的思考                                                                 created by jsjwql在网上碰到这样的一个题目,据说是微软面试的题目:将一个字符串的句子翻转(有空格)如"   you welcome,  GTSC  Microso

2007-09-20 15:08:00 1079

原创 什么时候需要删除由函数返回的指针

                                          什么时候需要删除由函数返回的指针                                                                  created by jsjwql http://blog.csdn.net/jsjwql/最近在做项目的时候,调用了很多第三方的API, 这些

2007-09-18 18:26:00 2676 1

转载 如何理解c和c++的复杂类型声明

                     如何理解c和c++的复杂类型声明曾经碰到过让你迷惑不解、类似于int * (* (*fp1) (int) ) [10];这样的变量声明吗?本文将由易到难,一步一步教会你如何理解这种复杂的C/C++声明。   我们将从每天都能碰到的较简单的声明入手,然后逐步加入const修饰符和typedef,还有函数指针,最后介绍一个能够让你准确地理解任何C/C+

2007-09-18 14:37:00 1585

原创 C++中堆和栈的完全解析

C++中堆和栈的完全解析内存分配方面:堆:操作系统有一个记录空闲内存地址的链表,当系统收到程序的申请时,会遍历该链表,寻找第一个空间大于所申请空间的堆结点,然后将该结点从空闲结点链表中删除,并将该结点的空间分配给程序,另外,对于大多数系统,会在这块内存空间中的首地址处记录本次分配的大小,这样代码 中的delete语句才能正确的释放本内存空间。我们常说的内存泄露,最常见的就是堆泄露(还有资源

2007-09-18 13:02:00 1681

原创 变量定义的注意事项

                            变量定义的注意事项我们在写代码的过程中经常会出现变量被重复定义了,我们就做一个小测试,看看这么避免这个问题,什么时候出错。1.   普通变量重复定义假设在有三个文件a.h, b.cpp, c.cpp.//a.h int i = 123; //b.cpp  include “a.h” //c.cppi

2007-09-17 17:44:00 2486

原创 C++中Static的完全解析

                     C++中Static的完全解析C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。一、面向过程设计中的static1、静态全局变量在全局变量前,加上关键字static,该变量就被定义成为一个静态全局变量。我们先举一个

2007-09-17 15:37:00 15973 11

原创 c++中const的完全解析

Const 作用1.   const类型定义:指明变量或对象的值是不能被更新,引入目的是为了取代预编译指令2.   可以保护被修饰的东西,防止意外的修改,增强程序的健壮性。3.   编译器通常不为普通const常量分配存储空间,而是将它们保存在符号表中,这使得它成为一个编译期间的常量,没有了存储与读内存的操作,使得它的效率也很高。4.    可以节省空间,避免不必要的内存分配。

2007-09-10 17:43:00 6734 1

转载 一步一步创建VC2005解决方案

  转载于:http://blog.csdn.net/starlee/archive/2007/09/03/1769755.aspx, 作者:StarLee现在软件开发已经告别了“独行侠”的年代,而是以团队开发为主。一般情况下,一个解决方案都会包含多个项目,比如:其中一些是静态库项目,一些是动态库项目,当然还会有应用程序项目。另外,根据需要,还可能会使用一些第三方库。因此为解决方案设置一个

2007-09-07 17:19:00 1440

转载 const 和 readonly 的区别

const 和 readonly 的区别,总是不太清楚,于是查了查资料。  const 的概念就是一个包含不能修改的值的变量。常数表达式是在编译时可被完全计算的表达式。因此不能从一个变量中提取的值来初始化常量。如果 const int a = b+1;b是一个变量,显然不能再编译时就计算出结果,所以常量是不可以用变量来初始化的。  readonly 允许把一个字段设置成常量,但可以执行一些运算

2007-04-17 10:52:00 864

原创 boost.bind

Purpose 用途boost::bind is a generalization of the standard functions std::bind1st and std::bind2nd. It supports arbitrary function objects, functions, function pointers, and member function pointers,

2006-08-28 09:50:00 1071

转载 经典收藏 C++内存管理操作详解

  Bill Gates 曾经失言:   640K ought to be enough for everybody — Bill Gates 1981    C++程序员们经常编写内存管理程序,往往提心吊胆。如果不想触雷,唯一的解决办法就是发现所有潜伏的地雷并且排除它们,躲是躲不了的。本文的内容比一般教科书的要深入得多,读者需细心阅读,做到真正地通晓内存管理。   1、内存分配方式  内存分

2006-08-03 19:32:00 1232

转载 C++调用C#组件的制作过程

1。open VS-2005,新建一个Win32的控制台应用程序COMInCShape。编译。没问题。2。在建成的Solution里加入一个C#的Class Library工程LibShape。    (1)改Class1.cs 文件名为ShapeInterface.cs,类名同时自动改为 ShapeInterface.    (2)在该类里加入如下代码:        private strin

2006-07-27 19:31:00 3512

转载 虚析构函数

 原因:因为 C++ 指出:当一个派生类对象通过使用一个基类指针删除,而这个基类有一个非虚的析构函数,则结果是未定义的。运行时比较有代表性的后果是对象的派生部分不会被销毁。然而,基类部分(也就是 TimeKeeper 部分)很可能已被销毁,这就导致了一个古怪的“部分析构”对象。这是一个泄漏资源,破坏数据结构以及消耗大量调试时间的绝妙方法。排除这个问题非常简单:给基类一个虚析构函数。于是,删除一

2006-07-24 13:00:00 1222 2

转载 预编译头文件(precompiled header)

今天在改一个很大的程序,慢慢看,慢慢改。突然发现一个.c文件,里面什么也没有, 就几个头文件,我一看,我靠,这不是把简单的问题搞复杂了吗,随手删掉那个c文件。 结果不能编译了,我靠: fatal error C1083: Cannot open precompiled header file: /Debug/v13_3.pch/: No such file or direc

2006-07-19 19:28:00 1215 1

转载 #pragma的使用(引用)

在所有的预处理指令中,#Pragma 指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma指令对每个编译器给出了一个方法,在保持与C和C++语言完全兼容的情况下,给出主机或操作系统专有的特征。依据定义,编译指示是机器或操作系统专有的,且对于每个编译器都是不同的。 其格式一般为:     #Pragma Para     其中Para 为参数,下面来看一

2006-07-19 18:29:00 1076

转载 C/C++ 常见误区

1. C++虽然主要是以C的基础发展起来的一门新语言,但她不是C的替代品,不是C的升级,C++和C是兄弟关系。没有谁比谁先进的说法,更重要的一点是C和C++各自的标准委员会是独立的,最新的C++标准是C++98,最新的C标准是C99。因此也没有先学C再说C++的说法,也不再(注意这个"不再")有C++语法是C语法的超集的说法。2. C++/CLI 和 C# 是微软的,它们与C和C++没有任何关系,

2006-07-19 18:27:00 877

转载 一次关于旨在降低编译时间的整改工作(vc++)

由于工程的文件的日益庞大和第3方库(ACE Loki Boost等等)的使用增多我所工作的项目系统构建时间从最初的3分钟变为现在的8分钟程序员的机器配置已经很不错了,3。0 的主频1g的内存,但是常常由于一个小的修改导致5分钟甚至更长的编译时间来验证效果。按照《Joel on software》的说法,其直接后果是可怕的:程序员们在这8分钟内无所事事,只有查看网页,或者qqmsn,打断先前的思路从

2006-07-19 18:20:00 2829

转载 Abstract class versus Interface

IntroductionIn this article along with the demo project I will discuss Interfaces versus Abstract classes. The concept of Abstract classes and Interfaces is a bit confusing for beginners of Object O

2006-06-16 14:51:00 1568

转载 All about abstract classes.

IntroductionAbstract classes are one of the essential behaviors provided by .NET. Commonly, you would like to make classes that only represent base classes, and don’t want anyone to create objects o

2006-06-16 14:43:00 1143

转载 由浅入深学“工厂模式”

1、  传授设计模式中存在的问题我个人最近对设计模式中的工厂模式进行了比较深入的学习,通过学习感悟出现在很多设计模式传道者,在讲述设计模式的过程中存在一些问题,使得设计模式变得很难理解。设计模式本身很抽象,但是这些传道者在讲述的过程中,将一个抽象的东西讲的更抽象,从而使我们望而却步。有些人在讲述的时候,没有考虑读者的注意力。比如我在看《C#设计模式》的时候,在讲述抽象工厂模式的时候,直接就进入

2006-06-05 09:38:00 1255 1

转载 CAD 技术发展历程概览

CAD技术起步于50年代后期。进入60年代,随着在计算机屏幕上绘图变为可行而开始迅速发展。人们希望借助此项技术来摆脱繁琐、费时、绘制精度低的传统手工绘图。此时CAD技术的出发点是用传统的三视图方法来表达零件,以图纸为媒介进行技术交流,这就是二维计算机绘图技术。    在CAD软件发展初期,CAD的含义仅仅是图板的替代品,即:意指Computer Aided Drawing(or Draft

2006-05-25 20:09:00 1988

转载 谈谈对AutoCAD的看法

大家知道,在电脑才开始使用不长时间,AutoCAD就应运而生。而在那个年代,AutoCAD可以说是一枝独秀。     随着时间的推移,AutoCAD已经不能独霸天下了。各种各样的专业二维或三维软件占领了AutoCAD原有的市场。AutoCAD不能再有以前的辉煌。很多设计单位都在重新选择更合适的软件来进行设计工作。    我们现在想想,为什么AutoCAD还能够保持到现在。而AutoCAD以

2006-05-25 20:08:00 2519

转载 AutoCAD发展历程回顾

AutoCAD是由美国Autodesk公司于二十世纪八十年代初为微机上应用CAD技术而开发的绘图程序软件包,经过不断的完美,现已经成为国际上广为流行的绘图工具。   AutoCAD可以绘制任意二维和三维图形,并且同传统的手工绘图相比,用AutoCAD绘图速度更快、精度更高、而且便于个性,它已经在航空航天、造船、建筑、机械、电子、化工、美工、轻纺等很多领域得到了广泛应用,并取得了丰硕的成果和巨大的经

2006-05-25 20:07:00 2733

原创 Step by Step: Event handling in C#

Implementing eventsStep 1 - Create an EventArgs classIf you need to pass arguments to the event handler, a specific EventArgs class has to be made. Eventually, a suitable EventArgs class might alr

2006-04-21 16:22:00 997

原创 Events and Delegates simplified

Delegate and Event concepts are completely tied together. Delegates are just function pointers, That is, they hold references to functions. A Delegate is a class. When you create an instance of it, yo

2006-04-21 11:59:00 1000

原创 Attribute

Using Pre-defined AttributesThere is a small set of pre-defined attributes present in C#. Before learning how to create our own custom attributes, we will first look at how to use those in our code.

2006-04-20 17:27:00 1539

转载 正则表达式

1、正则表达式简介  正则表达式提供了功能强大、灵活而又高效的方法来处理文本。正则表达式的全面模式匹配表示法可以快速地分析大量的文本以找到特定的字符模式;提取、编辑、替换或删除文本子字符串;或将提取的字符串添加到集合以生成报告。对于处理字符串(例如 HTML 处理、日志文件分析和 HTTP 标头分析)的许多应用程序而言,正则表达式是不可缺少的工具。   .NET 框架正则表达式并入了其他正则表达式

2006-04-20 09:46:00 737

原创 Reflection

In this article, I will provide examples for the following uses of Reflection: Collecting metadata of an assembly and discovering the types of classes in it. Dynamic invocation of methods

2006-04-19 17:47:00 763

空空如也

空空如也

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

TA关注的人

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