自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

燕青专栏

读书笔记及技术探讨

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

转载 mod_dav Installation and Configuration

mod_dav Installation and Configuration This page details as much information as possible regarding the building, installation, and configuration of the mod_dav Apache module. This

2006-07-28 13:44:00 2368

转载 SVN 客户端 命令详解

SVN 客户端 命令详解 作者:icephoton  来源:  类别:左岸成员原创作品  日期:2005-07-27  今日/总浏览: 7/4819

2006-07-27 11:28:00 3132

转载 CVS v.s. SVN ?

2005 年 11 月 02 日CVS v.s. SVN ?由 kreny 发表于 November 2, 2005 06:46 PM | 分类: Server Technol. RSS2 <!--google_ad_client = "pub-4422435161686488";google_ad_width = 336;google_ad_height = 28

2006-07-27 11:27:00 1091

转载 SVN学习笔记

SVN学习笔记     作者:雷凯    文章来源:UNIX中文宝库   

2006-07-27 11:26:00 1537

转载 使用Subversion进行版本控制

使用Subversion进行版本控制针对 Subversion 1.2(本书编译对应1876修订版本)Ben Collins-SussmanBrian W. FitzpatrickC. Michael Pilato版权 © 2002, 2003, 2004, 2005 Ben Collins-S

2006-07-27 11:25:00 16567

转载 HOWTO: smooth CVS to SVN migration

HOWTO: smooth CVS to SVN migration (and back again) This page explains how I migrated the VideoLAN CVS repositories to Subversion while still allowing anonymous CVS access for users who did not wa

2006-07-27 11:20:00 1168

转载 SVN vs CVS quick comparison

As it is known, before getting acquainted with SVN, our company had worked with CVS for long enough. We know CVS from both user and developer points of view. Approximately at the same level we had go

2006-07-27 11:18:00 1055

转载 Check Out from SVN

 Check Out from SVNWikipedia,自由的百科全书 目錄 [隱藏] 1 透過 SVN 來取得開發中的程式

2006-07-27 11:15:00 1793

转载 如何使用Subversion 服務

4.2 如何使用Subversion 服務 4.2.1 何謂Subversion 4.2.2 Unix系統上的使用 4.2.3 Windoes系統上的使用4.2.1 何謂Subversion 簡單的說,管理者可以將每次改變的檔案統一集中放在一個檔案庫中. 而這個檔案庫很像我們常使用的檔案伺服器, 不過它與檔案伺服器不一樣的地方是它

2006-07-27 11:14:00 1509

转载 SVN使用技巧

 SVN使用技巧 Submitted by xyz黑板 on 星期一, 一月 9, 2006 - 11:17 这里不好排版,

2006-07-27 10:56:00 1573 1

转载 什么是Bugzilla

什么是Bugzilla? Bugzilla是一个臭虫的数据库。它让用户报告软件的臭虫而且把它们转给合适的开发者。开发者能使用bugzilla保持一 个要做的事情的优先表,还有时间表和跟踪相关性。 不是所有的"bugs"都是臭虫。一些数据库中的内容是作为增强的请求(RFE)。一个RFE是一个严重级别字段被设为 "enhancement"的"臭虫".人们常说"bug",实际上意思是Bugzilla中

2006-07-26 15:53:00 2170 2

原创 如何在多态中克隆自己

有的时候,我们在多态使用中,想使用父类的指针来克隆对应的子类,但是这些父类指针是外部传递给使用者的。也就是说,使用者并不知道对应的子类。那么在这种情况下,如可克隆自己呢?下面一段代码简单的演示了一种使用方法,希望能够给读者一些启迪。ICloneable类是关键,它的clone方法能够克隆自己。所以如果子类要能够被克隆,一定要实现ICloneable类。#include #include using

2006-07-26 13:22:00 866

原创 一个简单封装用户命令的C++程序

在写测试程序的时候,重复编写重控制台读取命令的函数是令人乏味的,那么我们是否可以通过C++的封装性来完成一些简单的功能,以便日后的子类再次利用呢?这片文章就是在种需求的促使下,给出了一个简单的解决方案,希望网友对此有所启发。/** * @file Seminar1.cpp * @author Wang yanqing */#include #include using namespace std;

2006-07-14 11:17:00 1148

原创 浅谈C和C++

浅谈C和C++C是一门非常优秀的语言,在面向过程的语言中,它起到了至关重要的角色。随着软件行业的发展,面向过程的开发方式逐渐被面向对象的开发方式所替代,即我们平时所说的OOP。在这种历史背景下,需要有一种新的语言的问世,来满足日益增长的OOP软件需要。C++响应时代所求而呱呱坠地,人们的眼球为之一亮。正如C++的老祖Bjarne Stroustrup所说,C++是一门新的面向对象的编程语言。它

2006-07-13 10:51:00 1377

原创 使fread和fwrite的运用更加的强壮

在很多人的代码中,我们会发现很多这样的代码char buf[ 1024 ];int len = 0;...fread( buf, len,  sizeof( char ), file1 );...fwrite( buf, len, sizeof( char ), file2 );在正常情况下,这些代码能够正常的运行,但是在某些特殊点程序将出现错误。我们知道fread和fwrite能够被信号中断,如

2006-07-11 15:34:00 6624 3

原创 如何用信号来实现超时的读写机制

在使用标准库的读写操作函数时候,标准的接口是阻塞的,也就是说在没有完成动作之前,永远等待。在有些时候,我们对慢设备进行读写操作,需要有超时机制,如何实现呢?下面我简单的演示一种实现方法。#include #include #include #include using namespace std;#define INSTALL_TIMEOUT()    install_signal( timeou

2006-07-11 14:05:00 1421

原创 如何使安全使用信号

”如何使用setitimer来定时“  这片文章讲解了如何使用timer来完成定时工作,但是它使用了一个休眠函数,对于信号的处理实时性不好,这里有了一套改进的方法,以供网友讨论。#include #include #include #include using namespace std;class SignalUtil{    void (*sigHandler)( int signum ); 

2006-07-11 12:00:00 1682 1

原创 一道sizeof面试题的收获

今天做了一道面试题目,收获很多。请看下面一题:static char a[ 3 ][ 10 ] ;int main( void ){    char *p = a[ 0 ];    cout     cout     return 0;}输出的结果是什么?我开始以为a[ 0 ]是一个地址,所以两句语句是相同的结果,即 44 但是通过实际编译测试后,发现结果居然是104呵呵,原来编译器在编译的时候就

2006-07-11 10:39:00 1565 5

原创 如何使用setitimer来定时

对于下面的演示代码,我们完全可以使用sighandler_t signal(int signum, sighandler_t handler);来替代sigaction。#include #include #include #include using namespace std;volatile static long counter = 0;static void notify( int si

2006-07-07 17:20:00 4333 2

原创 常用的几个指针删除器

这里主要是介绍一个常用的指针删除器的使用,主要是为了便于前文中smart_ptr(请参考:http://blog.csdn.net/hello_wyq/archive/2006/07/07/888703.aspx)的使用,希望能够网友一些启发,便于日后的交流和跟进。// Author    : Wang yanqing// Module    : Smart pointer// Version  

2006-07-07 11:34:00 1310

原创 如何实现smart_ptr

前面文章已经介绍了如何实现一个简单的引用对象,在这里我将使用这个简单的引用计数对象来实现smart_ptr,这个对于我们日后对象指针在容器中的使用是相当的方便的,希望能给网友带来一些启迪。对于指针的析构器,请参考:http://blog.csdn.net/hello_wyq/archive/2006/07/07/888743.aspx// Author    : Wang yanqing// Mo

2006-07-07 11:29:00 1910

原创 一个简单的引用计数实现体类

 本文主要介绍一个简单的引用计数实现体类,它被引用计数对象(请参考:http://blog.csdn.net/hello_wyq/archive/2006/07/07/888606.aspx)所使用。它私用继承了Noncopyable对象(请参考:http://blog.csdn.net/hello_wyq/archive/2006/07/07/888550.aspx),以便禁止对象的拷贝和赋值操

2006-07-07 11:16:00 1242

原创 如何实现引用计数对象

引用计数是实现对象共享的一种方式,在c++中被广泛的使用。对于它的实现也有千差万别,我这里仅仅提供一种最为常见的方法,以便大家不时之需。// Author    : Wang yanqing// Module    : Smart pointer// Version    : 0.01// Date        : 03-Aug-2005// Reversion:// Date        :

2006-07-07 11:09:00 1611

原创 如何禁止对象的拷贝和赋值操作

     在c++的实现过程中,我们在有些特殊情况下,往往希望禁止对象的拷贝和赋值操作,最常见的方法是把对应类中的拷贝构造函数和赋值函数定义为私有类型,并且没有任何实现代码。这样做的好处在于编译器能在编译期间帮助程序员发现错误,即使编译能够通过,也会在链接期间发现错误。    对于这些重复的劳动是令人讨厌的,我们是否有一种相对容易的方法来实现这些限制呢?继承的特性能够轻易的搞定这些罗嗦的事情,只要

2006-07-07 10:55:00 2118

转载 C++ STL(标准模板库) 学习资源列表

C++ STL(标准模板库) 学习资源列表作者: winter STL以其独特的魅力得到越来越多的程序员钟爱,STL彻底封装复杂的数据结构,提供丰富灵活的程序接口,同时还能保证程序的运行效率。上次整理的STL技术文章列表得到许多朋友的捧场,这里整理更全面的STL学习资源列表,希望对朋友们有所帮助。STL网站类SGI STL  ★★★★★SGI STL是目前应用最为广泛的

2006-07-06 14:53:00 1199

原创 Effective STL 中文版

请登录:http://stl.winterxy.com/html/000016.html 

2006-07-06 11:34:00 1223

原创 在多线程环境中不要使用string/wstring

    string/wstring是basic_string模板的两个具体的应用,是c++模板库中的精华,我作为一个c++程序员,也特别喜欢这两个类。c++标准要求对于string/wstring的实现,必须支持数据共享。也就是说,对于同一个数据,不同的string/wstring对象必须共享它,如下图所示:+-----------------------------+ ptr|string/w

2006-07-06 10:30:00 6758 9

原创 Iterator中的有价值的几个函数

1)back_insert_iterator back_inserter(_C& _X)2) front_insert_iterator front_inserter(_C& _X)3)insert_iterator inserter(_C& _X, _XI _I)这三个函数对于使用operator++操作自动插入数据到容器中是十分有帮助的。因为长度可以突破原始长度,对弈back_insert_i

2006-07-05 17:51:00 170

原创 如何定位list中数据单元

list中没有提供operator+=操作,所以对于快速定位是一件罗嗦的事情(自己写循环语句是令人烦恼的)。值得庆幸的是,我们可以使用 中的advance函数来轻松搞定此事。情况下面演示代码:#include #include #include using namespace std;int main( void ){    list il;    for ( int i = 0; i     {

2006-07-05 17:34:00 2294

原创 如何正确释放Mutex

在使用mutex的时候,我们往往会陷入因为忘记释放mutex而导致的麻烦,这个给程序员带来很多的麻烦,根据c++标准可知,局部变量在生命周期结束时,一定会被析构掉(除非在异常处理过程中,另外一个异常在析构函数中被抛出),所以我们不妨使用这种特性来完成mutex的锁定和解锁功能。它的基本思路时在构造函数中获取锁,在析构函数中释放锁。我定义了一个模板类,用于此功能,希望对网友有所帮助。// Autho

2006-07-05 16:04:00 4283

原创 使用list实现一个简单的Listener管理

使用list来完成一个简单的listener管理类,当增加和删除操作不频繁的时候,可以考虑用vector来代替list,提高效率。这个简单管理类有很多的设计不足,它的存在主要目的是让网友知道如何使用list,而非是如何设计listener管理类。#include #include #include #include #include using namespace std;class IListe

2006-07-05 15:12:00 1218

原创 巧用标准c++中的算法函数,对数组进行操作

我们在c/c++中常用的指针也是算子,它符合算子的所有特性,所以我们可以用c++标准模板库中的algorithm算法函数,来对数组进行操作。这种操作,对于简化程序是十分有帮助的,下面我简单使用程序演示一下如何使用他们,希望能够给网友提供一种思路和一些启发。#include #include #include using namespace std;template struct SVisit: p

2006-07-05 11:42:00 2014

原创 如何获取两个算子之间的距离

 当有时候,我们需要知道两个算子之间距离的时候,中的distance函数就粉墨登场了。它的使用十分的简单,比如 dist = distance( container.begin(), container.end() ),它可以用于计算容器的尺寸,当他如果对应的容易有size()成员函数,那么就尽量使用size吧,比较distance的效力要差很多。

2006-07-05 10:46:00 1231

原创 使用rotate交换前后数据

rotate是一个比较有用的算法函数,我们可以使用它来交换前后数据,请看如下,我们以5为中间点0    1   2   3   4   5   6   7   8   9                   || rotate                   //5   6   7   8   9   0   1   2   3   4实现

2006-07-05 10:22:00 896

原创 使用auto_ptr来自动释放内存

标准的STL模板库中,有一个auto_ptr模板类,它能够自动释放用new分配的内存。对于在局部变量中内存的分配和释放,能够得到有效的处理,避免了内存泄漏。请看下面的演示代码:#include #include using namespace std;class Base{    int id;public:    Base( int _id = 0 )        : id( _id )   

2006-07-04 18:01:00 1478

原创 如何在list中删除重复的数据单元

使用list的sort和unique成员函数,能够轻松搞定它!请看下面的演示代码,注意,unique仅仅是删除相邻单元重复的数据单元,而不是全部。你可以注释掉sort语句来看他们不同的结果。#include #include #include #include using namespace std;template struct SVisit: public unary_function{   

2006-07-04 17:23:00 1919

转载 C++程序设计之四书五经

C++是一门广泛用于工业软件研发的大型语言。它自身的复杂性和解决现实问题的能力,使其极具学术研究价值和工业价值。和C语言一样,C++已经在许多重要的领域大获成功。 然而,一个不可否认的现实是,在低阶程序设计领域,C++挤压着C同时也在承受着C的强烈反弹,而在高阶程序设计领域,Java和C#正在不断蚕食着C+ +的地盘。也许C++与C合为一体永远都是一个梦想,也许Java和C#的狂潮终将迫使C

2006-07-04 09:19:00 1002

空空如也

空空如也

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

TA关注的人

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