- 博客(16)
- 资源 (1)
- 收藏
- 关注

原创 C/C++常用trick整理
以下涉及到的内容,均为网上搜集,并非本人原创1.构造函数互相调用class A...{public: A() ...{ new (this)A( 5 ); } A( int n ):_x(n) ...{ } int _x;};2.编译期判断结构大小是否合法struct xxx...{ int u;};con
2007-10-26 14:54:00
1069

原创 深度探索C++对象模型笔记(二)
Default Constructor 构建ARM中指出:Default Constructor在需要的时候被编译产生出来。这里要注意的是在需要的时候这个关键,这种需要分为程序的需要和编译器的需要,如果是程序的需要,那么Default Constructor是程序员的责任。在C++标准中指出nontrivial default constructor就是在ARM中指出的编译器需要的那种def
2007-08-18 09:11:00
849

转载 学C++50条忠告
1.把C++当成一门新的语言学习(和C没啥关系!真的。); 2.看《Thinking In C++》,不要看《C++变成死相》; 3.看《The C++ Programming Language》和《Inside The C++ Object Model》,不要因为他们很难而我们自己是初学者所以就不看; 4.不要被VC、BCB、BC、MC、TC等词汇所迷惑——他们都是集成开
2006-12-13 12:59:00
1022
原创 深度探索C++对象模型笔记(一)
封装的开销开销C++较C多了一些封装的特性,增加封装特性不会引起布局(layout)的开销,C++类的成员数据直接包含在每个对象内部,而noninline成员函数虽然在类中申明,但不会欻现在每个对象内部,每个noninline的成员函数仅产生一个唯一的函数实体。而inline函数在会为每个对象生成一个函数实体。因此C++类的封装并未带来任何空间或执行期间的不良,仅仅因为virtual的原因带来一些
2007-08-12 14:51:00
1159
转载 成员函数指针在开发中的实际应用
成员函数指针在开发中的实际应用作者:dozb前几天我的《成员函数指针》一文,主要介绍了类成员函数指针的使用方法,大家看了后认为意义不大,那是因为你可能还没有真正在开发中遇到需要用成员函数指针的情况。这篇文章就作为《成员函数指针》一文补充,举例说明在什么情况下使用成员函数指针来简化开发。设想我们要实现一个命令解释器类,就是这个类包括了若干个命令,通常我们的实现方法如下:class C
2007-08-11 10:46:00
957
转载 精妙SQL
说明:复制表(只复制结构,源表名:a 新表名:b) select * into b from a where 1 说明:拷贝表(拷贝数据,源表名:a 目标表名:b)insert into b(a, b, c) select d,e,f from b; 说明:显示文章、提交人和最后回复时间select a.title,a.username,b.adddate from
2006-12-13 18:58:00
814
原创 ICE常见问题的解决(一)
问:error C3861: “TryEnterCriticalSection”: 即使使用参数相关的查找,也未找到标识符答:增加预处理定义:_WIN32_WINNT=0X500问:ICE::Long类型变量不能正常输出答:ICE::Long类型占8个字节,使用%I64d格式输出问:JAVA客户端调用c++服务端,无论提交还是服务返回为乱码答:编码格式不正确,在服务端增加编码处
2006-12-07 10:42:00
6141
转载 COM的线程模型
COM的线程模型 COM并没有定义新的进程和线程模型,而是直接使用了Win32的线程(至少目前还是这样,还没有谁在Unix/Linux下开发出COM库来)。所以,在COM中对多线程的同步操作,都是使用操作系统提供的同步原语(比如windows下的临界区)来实现的。要了解COM(Component Object Model,组件对象模型)的线程模型,首先要理解COM的套间(Apa
2006-10-27 15:47:00
1637
原创 基于二进制COM的继承
建基类COM 方法比较简单,按照通用的ATL(COM)向导建立基于IBaseCOM的COM:CBaseCOM,增加一个方法:Print(BSTR str),方法实现如下:STDMETHODIMP CBaseCOM::Print(BSTR str){ // TODO: Add your implementation code here
2006-10-25 12:25:00
1492
原创 msXML DOM操作XML文档
以前一直用C#写程序,最近换到C++下 ,习惯了C#的serialization和unserialization,对使用COM操作XML一直比较困惑,经过学习,原来也不过如此,现将简单实用的一些方法记录下来:创建XML文档void Create() ...{ IXMLDOMDocumentPtr pDoc; HRESULT hr =pDoc.CreateInsta
2006-10-23 20:09:00
1026
转载 用纯C写的游戏
/**//************************* Copyright by forever_chang forever_chang@china.com 2001.11.1 *************************/ /**//*************************************************************************
2006-10-10 19:51:00
1930
原创 windows核心资料(二)
第2章 U n i c o d e 随着M i c r o s o f t 公司的Wi n d o w s 操作系统在全世界日益广泛的流行,对于软件开发人员来说,将目标瞄准国际上的各个不同市场,已经成为一个越来越重要的问题。美国的软件版本比国际版本提前6 个月推向市场,这曾经是个司空见惯的现象。但是,由于各国对Wi n d o w s 操作系统提供了越来越多的支持,因此就更加容易为国际市场生产各种
2006-09-28 19:59:00
1390
原创 windows核心
第3章 内核对象 在介绍Windows API 的时候,首先要讲述内核对象以及它们的句柄。本章将要介绍一些比较抽象的概念,在此并不讨论某个特定内核对象的特性,相 反只是介绍适用于所有内核对象的特性。 首先介绍一个比较具体的问题,准确地理解内核对象对于想要成为一名Wi n d o w s 软件开发能手的人来说是至关重要的。内核对象可以供系统和 应用程序使用来管理各种各样的资源,比如进程、线程和文件等
2006-09-28 19:59:00
1484
转载 WINDOWS核心资料(一)
第一部分 程序员必读 第1章 对程序错误的处理 在开始介绍Microsoft Windows 的特性之前,必须首先了解Windows的各个函数是如何进行错误处理的。 当调用一个Windows函数时,它首先要检验传递给它的的各个参数的有效性,然后再设法执行任务。如果传递了一个无效参数,或者由于某种原因无法执行这项操作,那么操作系统就会返回一个值,指明该函数在某种程度上运行失败了。表1 - 1列出了大
2006-09-28 19:56:00
1293
转载 给初学编程者的忠告
由C#风潮想起的-给初学编程者的忠告 作者: 刘巍 我始终认为,对一个初学者来说,IT界的技术风潮是不可以追赶的,而且也没有能力去追 赶。我时常看见自己的DDMM们把课本扔了,去卖些价格不菲的诸如C#, VB.Net 这样的大部 头,这让我感到非常痛心。而许多搞不清指针是咋回事的BBS站友眉飞色舞的讨论C#里面可 以不用指针等等则让我觉得好笑。C#就象当年的ASP一样,“忽如一夜春风来,千树万树
2006-09-28 19:53:00
1322
原创 c#程序中调用Oracle存储过程上传二进制文件
最新做一个新的项目,用到了微软的Enterprise Library库,该库支持SQL和Oracle的统一访问,因此不能用SqlConnectionClient或OracleConnectionClient中自定义的数据类型,只能使用通用的DbType,但是其中的二进制内容只能容纳8K,这对于上传文件或者图片来说,肯定是不够用的,通过仔细研究Oracle的存储过程,自己写了一个无限上传二进制内容的
2006-09-14 12:49:00
2382
windows via c/c++
2009-09-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人