2012年12月5日

用vector和string代替new动态分配的数组

摘要: 使用new动态分配数组,需要时时刻刻记住delete,很容易造成memory leak。使用vector和string则消除了这个负担,因为它们有自己的内存管理,在它们的析构函数中会自动释放内存。通常情况下用vector代替动态数组,如果要存储的元素类型是字符类型时使用string。所有适合于序列容器的STL算法,vector和string都可以使用。所以使用vector和string会带来更多的便利。许多string的实现采用了“引用计数”,用于消除不必要的内存分配和不必要的字符拷贝。但这样的实现在多线程环境中,需要注意一下因支持线程安全而导致的性能问题。如果所使用的string以“引用计数 阅读全文

posted @ 2012-12-05 18:32 zhuyf87 阅读(1869) 评论(0) 推荐(0) 编辑

导航