
STL&ACE
hankwangwang
这个人很懒,什么都没有留下
展开
-
熟悉C++标准库
C++标准库非常大。在C++标准中,关于标准库的规格说明占了密密麻麻300多页,这还不包括标准C库,后者只是 "作为参考"包含在C++库中。 当然,并非总是越大越好,但在现在的情况下,确实越大越好,因为大的库会包含大量的功能。转载 2007-07-02 17:32:00 · 2256 阅读 · 0 评论 -
详细解说STL string
详细解说STL string 详细解说STL string 0 前言: string 的角色 1 string 使用 1.1 充分使用string 操作符 1.2 眼花缭乱的string find 函数 1.3 string insert, replace, erase 2 string 和 C风格字符串 3 string 和 Charactor T转载 2008-04-28 13:57:00 · 1794 阅读 · 0 评论 -
CString,string,char*的综合比较
(一) 概述 string和CString均是字符串模板类,string为标准模板类(STL)定义的字符串类,已经纳入C++标准之中; CString(typedef CStringT > CString)为Visual C++中最常用的字符串类,继承自CSimpleStringT类,主要应用在MFC和ATL编程中,主要数据类型有char(应用于ANSI),wchar_t(un原创 2007-09-13 17:05:00 · 2149 阅读 · 0 评论 -
使用STL泛型算法编程与设计新思维
前言 永远记住,编写代码的宗旨在于简单明了,不要使用语言中的冷僻特性,耍小聪明,重 要的是编写你理解的代码,理解你编写的代码,这样你可能会做的更好。 --- Herb Sutter 1998年,国际C++标准正式通过,标准化对C++最重要的贡献是:对"强大的抽象概念"给 于更有力的支持,以降低软件的复杂度,C++提供了二种功能强大的抽象方法:面向对象编 程与泛型编程。面向对象编程大家一定很熟转载 2007-06-11 09:30:00 · 1913 阅读 · 1 评论 -
STL泛型算法
泛型算法:所有算法的前两个参数都是一对iterators:[first,last),用来指出容器内一个范围内的元素。每个算法的声明中,都表现出它所需要的最低层次的iterator类型。70个算法:accumulate() 元素累加adjacent_difference() 相邻元素的差额adjacent_find() 搜寻相邻的重复元素binary_search() 二元搜寻copy() 复制原创 2007-09-02 18:13:00 · 2027 阅读 · 0 评论 -
ACE_Singleton与ACE_Unmanaged_Singleton
近日使用ACE开发了客户端软件,测试出现一个重入的BUG,客户端注销后,再次进入会导致状态错误。经过跟踪分析发现,是使用ACE_Singleton引起的。 因为ACE_Singleton使用非常便利,在程序里面使用了多个,但因为它是系统管理的,在注销后,这个对象无法释放,导致状态全部错误。改成ACE_Unmanaged_Singleton,自己管理原创 2007-08-28 10:43:00 · 4224 阅读 · 0 评论 -
ACE笔记(1)-ACE文件操作
ACE里的文件操作与平常的Win32里面的文件操作有所不同,这是因为ACE是为网络开发而设计的,里面普遍都遵循了Client/Server模式,这样在操作文件时,ACE把文件看做是一个Socket服务器,而进行文件操作的类(ACE_FILE_IO)被看做是一个Socket Client。 有了上面的认识,使用ACE的文件操作就容易理解了: 调转载 2007-08-23 10:44:00 · 8016 阅读 · 1 评论 -
C++string类常用函数
string类的构造函数:string(const char *s); //用c字符串s初始化string(int n,char c); //用n个字符c初始化此外,string类还支持默认构造函数和复制构造函数,如string s1;string s2="he转载 2007-05-21 21:46:00 · 1728 阅读 · 0 评论 -
linux下ACE的安装
作者:张弛(zhangchi@bnchina.com)本文详细描述了在Linux操作系统上安装和配置“自适应通信环境(ACE)”的过程和注意事项。文中的描述基于RedHat Linux 9操作系统和ACE 5.4版准备工作:1.确保你的Linux操作系统的开发环境(gcc、make……)是完整且可用的。2.在安装ACE的过程中,可能需要root权限,因此确保你拥有root帐户的密码。3转载 2007-08-21 11:46:00 · 3798 阅读 · 0 评论 -
ACE_Message_Block小知识
ACE_Message_Block的分配器的使用方法 ACE_Messae_Block中结合了ACE_Allocator,使ACE_Message_Block更加灵活,本文中将简单介绍ACE_Message_Block和ACE_Allocator的使用方法,及注意事项。 首先我们看看原创 2007-08-18 14:42:00 · 3890 阅读 · 0 评论 -
关于ACE_InputCDR和ACE_OutputCDR读写数据时的经验
转载 2007-08-20 10:48:00 · 2128 阅读 · 0 评论 -
数据接收中粘包及半包的处理
在使用TCP协议的网络应用中,不可避免需要处理的一个问题就是半包和粘包的情况。 一种做法是在接收端设一个比较大的缓冲区,先将收到的数据包都放到缓冲区中,然后从该缓冲区中选取完整的数据包出来。该缓冲区的实现可以使用环形缓冲区进行优化,避免频繁的数据移动。使用该方法的一个描述见 http://www.vckbase.com/document/viewdoc/?id=1203转载 2007-08-17 20:06:00 · 2194 阅读 · 0 评论 -
ACE基础架构
1. OS适配层OS适配层是位于本地OS API和ACE之间的“瘦”代码层,它使ACE的较高层与平台依赖性屏蔽开来,从而使得通过ACE编写的代码保持了相对的平台无关性。只需要极少的努力,开发者就可以将ACE应用移植到任何平台上。OS适配层也是ACE框架之所以可用于如此多的平台的原因所在。目前ACE适用的OS平台包括:实时OS(VxWorks、Chorus、LynxOS和pSoS)、大多数版转载 2007-08-16 14:12:00 · 3499 阅读 · 0 评论 -
深入研究 STL Deque 容器
An In-Depth Study of the STL Deque Container(By Nitron)翻译 masterlee本文档深入分析了std::deque,并提供了一个指导思想:当考虑到内存分配和执行性能的时候,使用std::deque要比std::vector好。 介绍本文深入地研究了std::deque 容器。本文将讨论在一些情况下使用deq转载 2007-08-14 13:53:00 · 2075 阅读 · 0 评论 -
C++ 关联容器
转载 2007-07-09 13:53:00 · 1832 阅读 · 0 评论 -
STL vector 容器介绍
A Presentation of the STL Vector Container (By Nitron) 翻译 masterlee 介绍std::vector,并且讨论它在STL中的算法转载 2007-07-09 23:05:00 · 1754 阅读 · 0 评论 -
用STL快速编写ini配置文件识别类
ini文件是技术人员经常用到的一种系统配置方法,如何读取和快速识别ini文件中的内容实现起来比较繁琐。STL强大的功能在于能快速的实现排序、查找、 识别等功能。本文通过STL中的map,string,vector,ifstream等,来快速实现ini文件的识别类class IniFile。IniFile可以实现常见查找功能,并提供完整的源码。设计需求:ini文件的格式一般如下:[s转载 2007-07-09 22:25:00 · 2084 阅读 · 0 评论 -
详细解说STL string
详细解说STL string 0 前言: string 的角色 1 string 使用 1.1 充分使用string 操作符 1.2 眼花缭乱的string find 函数 1.3 string insert, repl转载 2007-07-09 22:41:00 · 1865 阅读 · 0 评论 -
关于空的class的size问题
看一下一个有趣又经典的例子:class A{};class B:public virtual A{};class C:public virtual A{};class D:public B,public C{};//以下结果和编译器相关,对于部分编译器,可能会出现下面的结果sizeof A; //结果为1sizeof B; //结果为8sizeof C; //结果为8sizeof D; /原创 2008-09-03 14:06:00 · 1840 阅读 · 0 评论