技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> 查看专题: stl
    之前对hash一直存在恐惧感,毕竟没用过……最近在一个组件里面自己实现了一个hashtable,感觉也就这么回事;回头看看书上对hashtable的分析,发现是极其的相似。不过,旧版本的C++标准里面并没有hashtable这个东西,而C++11中引入了相关的容器(std::unordered_set, std::unordered_multiset, std::unordered_map, std::unordered_multimap),所以可以直接使用C++11里面的容器了。
    SGI STL的关联容器(map、set、multimap、multiset)底层都是基于红黑树(Red Black Tree,RBT)来实现的,红黑树是一种被广泛使用的二叉查找树(Binary Search Tree,BST),有比较良好的操作效率。
    最近在写C++代码的时候, 经常能使用到萃取(traits)编程技术, 于是学习STL中关于萃取的知识, 并总结出来, 以飨读者, 同时加深自己的理解.
    在360云引擎技术博客的“深入剖析linux GCC 4.4的STL string”这篇blog的指导下,看了一些STL string的实现代码,并针对我们平时对string的一些常规用法做了一些测试。这里做一下总结,希望能帮助大家更好的理解理解STL string,更高效的使用STL string。
    string中find_first_of的误用 STL中提供的string可以说极大方便了对字符串的操作,但是很多函数由于样子上很相似,所以导致很容易理解错误,find_first_of和find就是一个很好的例子。
    

当然,一般split我们还是使用字符分割比较多。
另外也说一个问题,stl里面string的find和rfind方法是可以查找字符串的,但是find_last_of和find_first_of只能查找字符,即使传入的参数是字符串,查找的也是字符。

    最近在修改一个代理机server,增加url rewrite的功能,由于其单机的访问量很高,20000/s左右,对性能要求很高,所以在做url映射的时候,纠结在用map还是hashmap存储映射的问题上。于是做了一个...
    STL比较出名的有如下三个:一个是SGI STL。STL之父离开HP之后就去了SGI(当然不是去搞侏罗纪公园),然后和Matt Austern这些STL大牛一起搞了SGI STL。SGI STL技术比较新,很规范(但是代码读起来未...
    输入:一个字符串,单词用某个特定符号分割(比如空格)输出:一个字符串,单词顺序和原串相反看到倒置,一般的做法是用栈,要么自己建个数组、要么STL,或者递归用程序栈。
             我们一般人写程序,不可避免要使用别人开发的库来搭积木。其实也讲究这个“知己知彼”:
         知己----对自己程序要实现的业务逻辑分析清楚,时间上、空间上的复杂度等;
         知彼----对我们所使用的库也要有一定的了解,了解的越清楚越好;当然我们可能不会去完全了解各个库,这要看个人的修养方向了。
[ 共10篇文章 ][ 第1页/共1页 ][ 1 ]
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1