C++/STL/OO
文章平均质量分 51
阿来007
来自江西,IT行业,10余载。
展开
-
调用empty而不是检查size()是否为0
对任一容器c,下面的代码if(c.size() == 0) …本质上与if(c.empty() == 0) …是等价的。为什么偏向于调用empty,理由很简单:Empty对所有的标准容器都是常数时间操作,而对一些list实现,size耗费线性时间。原创 2006-09-05 18:37:00 · 1018 阅读 · 0 评论 -
uSTL - a size-optimized STL
uSTL is a partial implementation of the STL that reduces code size by factoring memory management code into a non-template base class and deriving containers from it.原创 2007-08-16 19:29:00 · 1035 阅读 · 0 评论 -
转:设计模式与篮球
转:与篮球共舞,尽显模式本色 — 仅以此献给华中科技大学物理系01级2班篮球队==创建型模式==1、 =SIMPLE FACTORY=打完篮球真累,正好边上有个小摊。“来杯可乐。”“我要芬达。”“一瓶矿泉水。”工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。有了小摊这个工厂,我们口渴的问题就很easy的解决转载 2007-08-01 14:22:00 · 1162 阅读 · 0 评论 -
从追MM谈23种设计模式 --- 很经典! 学会用设计模式思考问题
从追MM谈23种设计模式 --- 很经典,转到自己的BLOG上收藏着先设计模式做为程序员的“内功心法”,越来越受到.net 社区的重视,这种变化是很可喜的,Java社区走在了我们的前面,但这种状况也许有一天会发生改变。从追MM谈Java的23种设计模式1、FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基转载 2007-07-27 18:20:00 · 1032 阅读 · 0 评论 -
常用正则表达式
常用正则表达式正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。匹配中文字符的正则表达式: [/u4e00-/u9fa5]评注:匹配中文还真是个头疼的事,有了这个表达式就好办了匹配双字节字符(包括汉字在内):[^/x00-/xff]评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)匹配空白行的正则表达式:/转载 2007-04-02 14:48:00 · 667 阅读 · 0 评论 -
怎样删除STL容器中的元素
怎样删除STL容器中的元素去除一个容器中有特定值的所有对象:如果容器是vector、string或deque,使用erase-remove惯用法。如果容器是list,使用list::remove。如果容器是标准关联容器,使用它的erase成员函数。去除一个容器中满足一个特定判定式的所有对象:如果容器是vector、string或deque,使用erase-remove_原创 2007-03-14 13:33:00 · 1167 阅读 · 0 评论 -
现代C++中的预处理宏
现代C++中的预处理宏--徐东来摘要:在C++从C继承的遗产中,预处理宏是其中的一部分。在现代C++的发展过程中,预处理宏是否还有意义?本文将讨论之。关键字:预处理 宏 #define #pragma C++中有那么多灵活的特性,例如重载、类型安全的模板、const关键字等等,为什么程序员还要写“#define”这样的预处理指令? 典型的一个例子,大家都知道“co原创 2006-04-29 14:17:00 · 3084 阅读 · 0 评论 -
慎重选择容器类型
慎重选择容器类型一、回顾C++提供的容器Ø 标准的STL序列容器vector、string、deque和list。Ø 标准的STL关联容器set、multiset、map和multimap。Ø 非标准序列容器slist和rope。Ø 非标准的关联容器hash_set、hash_multiset、has原创 2006-09-05 17:49:00 · 1455 阅读 · 0 评论 -
检查new是否失败几乎是没有什么意义的,为什么?
1。 在那些直到内存被用到时才提交实际内存的系统之上,检查new失败通常是没有意义的;2。 在拥有虚拟内存的系统上,new失败几乎不会发生,因为早在虚拟内存耗尽之前,系统通常就已经开始颠簸了,而此时系统管理员自然会杀掉一些进程;3。 除了一些特殊情况之外,通常即便你检测到了new失败,要是真的没有内存剩下了的话,那么你也就做不了什么了。原创 2006-04-25 11:03:00 · 1776 阅读 · 1 评论 -
常用算法和复杂度总结
一、常用算法和复杂度算法名称复杂度备注快速排序QuickSort(A,p,r)最坏:O(n2)平均:O(nlog n)均衡划分:O(nlog n) 合并排序MergeSort(A,p,r)O(nlog n)原创 2010-01-03 12:00:00 · 7673 阅读 · 0 评论