自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(60)
  • 资源 (1)
  • 收藏
  • 关注

原创 java collection接口

 1、Collection 和 Collections的区别。Collections是个java.util下的类,它包含有各种有关java集合操作的静态方法。 Collection是个java.util下的接口,它是各种java集合结构的父接口 2、List, Set, Map是否继承自Collection接口? List,Set是 Map不是 3、ArrayLis

2010-01-26 21:35:00 1859

原创 合成(composition)和聚合(aggregation)的区别

聚合是勇士表示“拥有”关系,整体与部分的关系合成是一种更强的“拥有”,具有生命周期的关系 对于C/C++语言来说,合成是值的聚合(aggregation by value), 聚合是引用的聚合(aggregation by reference)

2009-12-15 16:08:00 495

转载 java抽象类与抽象方法

抽象类就是不能使用new方法进行实例化的类,即没有具体实例对象的类。抽象类有点类似“模板”的作用,目的是根据其格式来创建和修改新的类。对象不能由抽象类直接创建,只可以通过抽象类派生出新的子类,再由其子类来创建对象。当一个类被声明为抽象类时,要在这个类前面加上修饰符abstract。    在抽象类中的成员方法可以包括一般方法和抽象方法。抽象方法就是以abstract修饰的方法,这种方法只声明返

2009-12-12 20:39:00 287

转载 c++ 异常处理

第一节、使用异常一、语法规则和结构图示try {        try-fields        throw exception-object;}catch (exception-[object | pointer | reference] e) {        catch-fields}catch (...) {        ca

2009-10-20 22:43:00 578

转载 linux 的库操作命令 ar和nm

当我们的程序中有经常使用的模块,而且这种模块在其他程序中也会用到,这时按照软件重用的思想,我们应该将它们生成库,使得以后编程可以减少开发代码量。这里介绍两个命令ar和nm,用来对库操作。 1.ar基本用法2.nm基本用法命令 当我们的程序中有经常使用的模块,而且这种模块在其他程序中也会用到,这时按照软件重用的思想,我们应该将它们生成库,使得以后编程可以减少开发代码量。这里介

2009-10-15 14:08:00 136

原创 C++类模板的成员函数模板写法收藏 ---------- 转

这几天本来想将Lua_Tinker移植到Linux上去的,但是由于VC中的模板写法与gcc中的模板写法有些不同之处,比如下面一段代码: struct pop_  {  template    static T invoke(lua_State *L, int index)    { return lua2type::invoke(L, index);     }  templa

2009-10-14 23:59:00 591

转载 成员模板函数

 巧用成员模板函数为你的类留下后门如果你的类需要扩展功能,除了修改源码之外,你也可以从这个类派生一个类来对这个类作扩充。比如有如下一个类。class cls{public:    int fun( int a)    {       //一些处理       return 0;    }

2009-10-14 23:46:00 568

转载 java中,throws与throw有什么不同?

这两者虽然看起来只有一个s的区别,但是作用完全不一样 /////java处理异常方式/////////////////////////////// 在java代码中如果发生异常的话,jvm会抛出异常对象,导致程序代码中断,这个时候jvm在做的操作就是:创建异常对象,然后抛出,比如: int i= 1; int j = 0; int res = 0; res = i/j;//除0错误 System.

2009-04-07 15:29:00 172

原创 构建新型的基于PHP5.0的Web服务

本篇根据NuSoap改造过来的 许多机构已经采用了Apach和PHP作为他们的Web应用环境。在Web services模式中采用PHP可能看上去可能会比较难。但是事实上,你可以轻松的应用PHP5.0构建SOAP的客户端和服务器端。什么是 PHP?  PHP:Hypertext Preprocessor(超文本预处理器,PHP)是一种流行的服务器端脚本语言,用于创建动态 Web 内容。PH

2009-03-25 21:39:00 500

转载 如何判断Unix系统的一个库文件是32位还是64位的

某些时候,我们需要知道操作系统的位数,或者配置插件的时候需要知道主程序的位数(例如配置apache插件的时候需要知道apache的位数以便配置相应的插件),最简单的办法就是执行file命令,如:Linux:# file libnss1_files-2.2.4.so libnss1_files-2.2.4.so: ELF 32-bit LSB shared object, Intel 803

2009-02-19 10:29:00 3208

原创 shell 13 问:http://bbs.chinaunix.net/thread-218853-1-1.html

 牛文

2009-02-06 10:47:00 355

转载 shell编程入门_pwd命令列出当前目录

 最近下定决心,一定要掌握基本的shell,在linux下哪有不会shell的?(我看估计很少,很不行,我就是其中一个 -_-!!! )刚开始的话,太难的一时半会儿肯定也啃不下去,在应用中掌握嘛(个人看法~)我觉得很多论坛都是很好的学习地方!原则就是多看,多思考,多动手,多搜索,多问!只要掌握这五个”多”,相信一段日子后我们也会成为帮助别人的人~今天入门写了个简单得不能再简单的shell程序,

2009-02-06 09:58:00 2406 1

转载 shell脚步命令行参数传递问题

1. #------------------------------------------------------------------------- 9 # 强烈注意,在赋值的前后一定不要有空格10 # 如果有空格会发生什么?11 12 #  如果"VARIABLE =value",13 #              ^14 #+ 脚本将尝试运行一个"VARIABLE"的命令,带着一个"=v

2009-02-05 22:01:00 10700

转载 rpm建包原理

为什么要打包? 制作 rpm 不仅仅是打包,更可以解决菜单创建、打补钉、完成大量预配置、与其他软件包互动等操作。使用源代码安装要求用户了解基本的编译过程、能够应付各种不能编译的意外、必须自己完成抽象的配置、甚至懂得软件开发,能够自己打补钉,……对非计算机专业的用户而言简直就是天方夜谭。这是把软件开发的最后一步抛给了用户,作为发行版,这是极不负责任的!也是不现实的,除非用 lfs,但那是一本菜谱,不

2009-01-29 22:40:00 693

转载 Red Hat Package Manager(RPM的介绍和应用)

RPM 是 Red Hat Package Manager 的缩写,本意是Red Hat 软件包管理,顾名思义是Red Hat 贡献出来的软件包管理;在Fedora 、Redhat、Mandriva、SuSE、YellowDog等主流发行版本,以及在这些版本基础上二次开发出来的发行版采用;RPM包里面都包含什么?里面包含可执行的二进制程序,这个程序和的软件包中的.exe文件类似是可执行的;RP

2009-01-29 22:38:00 190

转载 Corba应用之TAO 实现库ImR(Implementation Repository)的使用

Corba应用之TAO 实现库ImR(Implementation Repository)的使用作者:  wulanshi@163.com零、前言这篇文章是在学习ACE_wrappers/TAO/docs/tutorials/Quoter/Simple/Impl-Repo/范例时碰到问题时才想到写的,按照范例的步骤是无法运行(Implementation Repository)样例的,后来研究了相

2009-01-21 22:01:00 374

转载 什么是Ant

 Ant是一种基于Java的build工具。理论上来说,它有些类似于(Unix)C中的make ,但没有make的缺陷。既然我们已经有了make, gnumake, nmake, jam以及其他的build工具为什么还要要一种新的build工具呢?因为Ant的原作者在多种(硬件)平台上开发软件时,无法忍受这些工具的限制和不便。类似于make的工具本质上是基于shell(语言)的:他们计算依赖关

2009-01-10 21:43:00 270

转载 CORBA Programming with TAO - 1.Start(基本概念)

 摘要:简要介绍CORBA的基本原理,并解释POA、stub、skeleton、servant等重要概念。一、CORBA及TAO简介CORBA是一个为简化跨平台应用而提出的规范,它独立于网络协议、编程语言和软硬件平台,支持异构的分布式计算环境和不同编程语言间的对象重用。CORBA可以作为不同平台应用间信息传递的中间件,CORBA通过引入经过充分验证的有效的框架结构和通信手段,最大限

2008-12-21 17:33:00 395

转载 CORBA Programming with TAO - 2.Compile Source Code(编译ACE/TAO/CIAO)

 摘要:简要介绍如何在Windows平台上编译ACE/TAO/CIAO,及编译过程中需注意的问题。正文:随着ACE/TAO/CIAO研究者研究的不断深入,整个平台变得越来越庞大,涉及的工程及目录数目也越来越多,下面简要介绍一下如何在Windows平台上编译ACE/TAO/CIAO,其过程在其它平台上是类似的。一、目录结构在开始之前,先简要介绍一下整个产品的目录结构。ACE(

2008-12-21 17:32:00 358

转载 CORBA Programming with TAO - 9.Postscript(后记)

 摘要:这是整个系列的最后一篇,对整个系列及该系列未涵盖的内容进行了总结,同时对CORBA及分布式对象计算技术的发展状况进行了简单分析。正文:CORBA本身是一个复杂的体系,本系列只是初步介绍了用TAO进行分布式CORBA应用的基础知识,并有选择性地略去了部分内容(如DynAny、POA Policy、Persistent Object等,关于POA Policy的相关内容可阅读参

2008-12-21 17:29:00 217

转载 CORBA Programming with TAO - 8.Event Service(事件服务)

 摘要:事件服务(Event Service)通过在通信的双方甚至是多方间引入一个第三方――Event Channel,一定程度上解除Client和Server之间的耦合关系,在通信的过程中,任意一方只需与Event Channel打交道,而无需确切知道对方的存在,从而使得二者由一对一的关系变成多对多的关系。一、简介CORBA除了前面讲过的基本的Naming Service(命名服

2008-12-21 17:24:00 362

转载 CORBA Programming with TAO - 7.IIOP(体验IIOP--一个Java作客户端的例子)

 摘要:CORBA2.0引入的IIOP(Internet Inter-ORB Protocol)是GIOP(General Inter-ORB Protocol)针对TCP/IP协议的一个实现,IIOP使得不同ORB间可以相互访问,同时也使得基于不同ORB的复杂分布式应用成为可能。一、简介TAO是一个C++ ORB,因此,我们在没有其它附加“转接”模块的情况下,仅能使用C++来直接

2008-12-21 17:09:00 375

转载 CORBA Programming with TAO - 6.Naming Service(使用命名服务)

 摘要:命名服务(Naming Service)是CORBA定义的诸多服务中比较常用的一个, Naming Service提供的助记符解析服务使得应用程序可以借助助记符,而不是一大串IOR来访问到相应的Servant。一、简介直接将IOR串在程序间传递的做法往往比较不方便,特别是,对于非持久servant来说,每次重启Server程序时,这个IOR都会发生变化,在使用上比较不便,而

2008-12-21 16:46:00 636

转载 CORBA Programming with TAO - 5.Hello World(简单实例)

 摘要:前面对CORBA编程的基础知识进行了简单介绍,本篇中,我们将实例讲解如何利用TAO中进行CORBA编程。一、编写IDL1、建一个空的Solution,然后在该Solution目录下新建一个名为idl的Win32 Static Library工程(对于一般的TAO工程,无需单独为idl建一个Project,但由于我们要重用该idl,所以单独为其建立一个工程比较便于管理)。

2008-12-21 16:33:00 337

转载 CORBA Programming with TAO - 4.Basic Functions(常用基本方法解析)

  摘要:简要介绍CORBA规范定义的几个常用基本方法的功能及应用中需要注意的问题。正文:idl编译器会为每个在idl中声明的interface生成一个对应的代理基类:class InterfaceName;以及两个对象引用类型:InterfaceName_ptr和InterfaceName_var前者是一个指针类型,其定义往往是:typedef Int

2008-12-21 16:26:00 231

原创 CORBA Programming with TAO - 3.IDL Data Type(数据类型与Mapping)

摘要:简要介绍TAO支持的IDL数据类型及其C++ Mapping关系。一、简单基本数据类型(Simple Basic Types)TAO支持以下简单基本数据类型(%TAO_ROOT%/tao/Basic_Types.h):IDLC++booleanCORBA::BooleancharCORBA::Char

2008-12-21 16:09:00 490

原创 企业如何免费开展网络营销

 企业可以不花钱开展网络营销么? 企业可以不花钱让网络给自己带来客户和销售么? 是的!今天给大家分享:企业如何免费开展网络营销!我以前讲过,企业开展网络营销需要做好以下三步工作:1、从营销的角度建设一个网站2、系统化的进行网站推广3、认真做好网络营销管理下面王通来给大家一步一步来讲如何免费来开展网络营销. 第一步:免费建设营销型网站提供免费建站的平台:1、G

2008-11-11 14:04:00 211

转载 2.6 Linux 内存管理改进

2.6 Linux 内核使用了许多技术来改进对大量内存的使用,使得 Linux 比以往任何时候都更适用于企业。本文列出了一些更重要的改变,包括反向映射(reverse mapping)、使用更大的内存页、页表条目存储在高端内存中,以及更稳定的内存管理器。 随着 Linux 内核的发展和成熟,更多的用户期待着 Linux 可以运行非常大的系统来处理科学分析应用程序或者甚至海量数据库。这些企业级的

2008-07-07 23:15:00 213

原创 弄清C++在幕后为你所写、所调用的函数

一个空类什么时候不是空类? ---- 当C++编译器通过它的时候。如果你没有声明下列函数,体贴的编译器会声明它自己的版本。这些函数是:一个拷贝构造函数,一个赋值运算符,一个析构函数,一对取址运算符。另外,如果你没有声明任何构造函数,它也将为你声明一个缺省构造函数。所有这些函数都是公有的。换句话说,如果你这么写:class Empty{};和你这么写是一样的:class Empty {

2008-06-23 21:48:00 167

原创 使用 __declspec(dllimport) 导入到应用程序中

如果一个程序使用 DLL 定义的公共符号,就说该程序是在导入公共符号。为使用 DLL 生成的应用程序创建头文件时,在公共符号的声明上使用 __declspec(dllimport)。不论是用 .def 文件导出还是用 __declspec(dllexport) 关键字导出,__declspec(dllimport) 关键字均有效。若要提高代码的可读性,请为 __declspec(dllimpo

2008-06-15 15:11:00 183

转载 关于DLL的函数

关于DLL的函数:         动态链接库中定义有两种函数:导出函数(export   function)和内部函数(internal   function)。     导出函数可以被其它模块调用,内部函数在定义它们的DLL程序内部使用。         输出函数的方法有以下几种:         1、传统的方法         在模块定义文件的EXPORT

2008-06-15 15:02:00 206

转载 C++类实例大小

初学者在学习面向对象的程序设计语言时,或多或少的都些疑问,我们写的代码与最终生编译成的代码却 大相径庭,我们并不知道编译器在后台做了什么工作.这些都是由于我们仅停留在语言层的原因,所谓语言层就是教会我们一些基本的语法法则,但不会告诉我们为什么这么做?今天和大家谈的一点感悟就是我在学习编程过程中的一点经验,是编译器这方面的一个具体功能.首先:我们要知道什么是类的实例化,所谓类的实例化就是在内存中

2008-05-26 23:35:00 160

转载 volatile

一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值(From Memory),而不是使用保存在寄存器里的备份。下面是volatile变量的几个例子:1) 并行设备的硬件寄存器(如:状态寄存器)2) 一个中断服务子程序中会访问到的非自动变量(Non-automatic va

2008-05-24 16:09:00 147

转载 使用标准C++的类型转换符:static_cast、dynamic_cast、reinterpret_cast、和const_cast。

3.1 static_cast用法:static_cast ( expression )      该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性。它主要有如下几种用法:①用于类层次结构中基类和子类之间指针或引用的转换。  进行上行转换(把子类的指针或引用转换成基类表示)是安全的;  进行下行转换(把基类指针或引用转换成子类表示)时,由于没有动态类

2008-05-24 16:06:00 533

转载 static_cast揭密

  [ 翻译文档 本文适合初级读者 已阅读12900次 ]

2008-05-24 15:41:00 135

原创 explicit关键字

c++中的explicit关键字用来修饰类的构造函数,表明该构造函数是显式的,既然有"显式"那么必然就有"隐式",那么什么是显示而什么又是隐式的呢?如果c++类的构造函数有一个参数,那么在编译的时候就会有一个缺省的转换操作:将该构造函数对应数据类型的数据转换为该类对象,如下面所示:class MyClass{public:MyClass( int num );}....MyClass

2008-05-24 13:48:00 133

转载 Proxy

一、概述大家都用过代理服务器,代理服务器是从出发点到目的地之间的中间层。而Proxy模式中的Proxy功能上与此类似,是对象的访问者与对象之间的中间层。Proxy(代理)模式可用于解决在直接访问对象不方便或不符合要求时,为这个对象提供一种代理,以控制对该对象的访问。二、结构Proxy模式的类图结构如下图所示:图1:Proxy模式类图示意在上面的类图中,Proxy类是Subject类的子类,但个人认

2008-05-21 21:22:00 206

原创 友元类

1。类还有友元类,一个友元类可以访问类的私有数据,而非友元类则不能访问类的私有数据,这就实现了类的封装。2。 一个类作为另一个类的友元时,该类称为友元类。友元类的所有成员函数都是另一个类的友元函数,都可以访问另一个类中的隐藏信息(包括私有成员和保护成员)。     友元类可以在另一个类的公有部分或私有部分进行说明,说明方法如下:     friend ; //友元类类名     使用友元类时注

2008-05-21 21:10:00 255

原创 vector常用方法

1.Vector的能力Vector模塑出一个动态数组。因此,它本身是“将元素置于动态数组中加以管理”的一个抽象概念。在末端附加或删除元素时,vector的性能相当好。可是如果你在前面或者中部安插或元素元素,性能就不怎么样了,因为操作点之后的每一个元素都必须移动另一个位置,而每一次移动都得调用assignment(赋值)操作符。在内存分配方面,可以使用reserve(),保留

2008-05-13 22:23:00 791

转载 VCETOR的使用

借助valgrind,终于找到一个隐藏很久的bug:class A{    };std::vectorA>  vecArray;vecArray.push_back(  );vecArray.push_back(  );vecArray.push_back(  );A & a= vecArray.back();vecArray.push_back(  );以上的代码骤眼看上去也没有什么奇怪

2008-05-13 21:24:00 539

JacORB 2.3 Programming Guide.pdf

关于Corba的经典教程,推荐阿,关于JAVA方面的,很好的教材

2008-12-09

空空如也

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

TA关注的人

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