C++
zhangleisz
这个作者很懒,什么都没留下…
展开
-
删除容器的元素时应谨慎
当一块内存被释放后,指向它的所有指针都成了“野指针”;当容器中的的一个元素被删后,指向那个元素的所有迭代器也都失效了。这两者都是程序员的大敌。对于前者,你已经有了足够的警惕,并且多年来养成了一个对付它的好习惯,就是在释放内存后立即把指向它的指针赋值为NULL,并在使用任何指针前都先判空(判断其是否为空指针)。而对于后者,即使经验丰富的猎人也仍然不时地掉入它的陷阱。 假定我们有一个容器c,定义转载 2012-04-05 12:57:54 · 378 阅读 · 0 评论 -
C++泛型编程:源起、实现与意义
为什么泛型 泛型编程(Generic Programming)最初提出时的动机很简单直接:发明一种语言机制,能够帮助实现一个通用的标准容器库。所谓通用的标准容库,就是要能够做到,比如用一个List类存放所有可能类型的对象,这样的事情;熟悉一些其它面向对象的语言的人应该知道,如Java里面这是通过在List里面存放Object引用来实现的。Java的单根继承在这里起到了关键的作用。然而单根继承对C转载 2012-05-04 17:25:19 · 500 阅读 · 0 评论 -
泛型编程与设计新思维
泛型编程与设计新思维 作者:徐景周 前言 永远记住,编写代码的宗旨在于简单明了,不要使用语言中的冷僻特性,耍小聪明,重要的是编写你理解的代码,理解你编写的代码转载 2012-05-04 17:54:53 · 337 阅读 · 0 评论 -
《Effective STL 读书笔记》 第三章 关联容器
作者:咆哮的马甲 出处:http://www.cnblogs.com/arthurliu/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。 转载请保持文档的完整性,严禁用于任何商业用途,否则保留追究法律责任的权利。 第十九条: 理解相等(equality)和等价(equivalence)的区别 相等的概念是基于op转载 2012-04-23 14:42:41 · 360 阅读 · 0 评论 -
C++转型操作符:const_cast、dynamic_cast、static_cast、reinterpret_cast
C++转型操作符 C++通过引进四个新的类型转换操作符克服了C风格类型转换的缺点,这四个操作符是: const_cast( expression ) dynamic_cast( expression ) static_cast( expression ) reinterpret_cast( expression ) 在大多数情况下,对于这些操作符你只需要知道原来你习惯于这样写:转载 2014-06-17 18:10:01 · 435 阅读 · 0 评论