全部博文(2759)
发布时间:2013-09-02 09:46:05
在软件开发中大规模引入智能指针,担心效率,在vector里面塞满了shared_ptr,一旦遍历,想想都会心痛。
如果给有10万元素的vector和list中,随机删除和插入 4 byte大小的node,哪个效率更高?不要被臆想欺骗, vector 效率更高, 你信么?Bjarne 在他的 C++11 Style – A Touch of Class 中提到过这个问题,也是我第一次看到,各种震惊。cpp-benchmark-vector-list-deque做了更详细评测。对于软件效率,想象的未必是真实的。
我对智能指针的担心只是臆测。实践之后,效率问题?Performance analysis之后,我没有发现是在智能指针这里,绝对没有。不要担心我的shared_ptr的vector不够大,遍历的不够多。那个软件是做log分析的,几千万行的log。
效率问题不用担心,事情并没有万事大吉,细节总是在实际应用中浮出水面。相比较而言,效率问题,早就置之脑后了。......【阅读全文】
发布时间:2013-08-29 00:51:28
内存中存储数据有两种方法:一种低字节序列存储在起始地址,这称为小端字节序,另一种方法是将高字节序列存储在起始地址,这称为大端字节序。术语“小端”和“大端”表示多字节值的哪一端(大端或小端)存储在改值的起始地址。 仿造书上page65页的例子,写的代码如下: .........【阅读全文】
发布时间:2013-08-29 00:48:58
本文示例说明了如何在Chrome浏览器中增加JavaScript API。为了简化,先假设是在已有的namespace中增加一个新的API,文章的最后将指出如果增加一下全新的namespace所需注意的事项。......【阅读全文】
发布时间:2013-08-29 00:46:50
学习MFC就像玩魔术,着实有趣,从传统的黑白命令行跳到熟悉的窗口界面,感觉还是很新鲜的。尽管MFC的知识更多是应用性的,但是自己还是想尽快掌握起来独立地写出图形接口的程序。今天学习的是如何绘制简单的图形,比如直线;当然后面还有高级绘图,但是那些部分对于自己现在就没有多少必要了:自己需.........【阅读全文】
发布时间:2013-08-27 02:19:55
一、通用容器大小操作 所有容器类型都提供4种与容器大小相关的操作,包括: (1)c.size():返回容器c中的元素个数 (2)c.max_size():返回容器c可容纳的最多元素个数,返回类型为c::size_type .........【阅读全文】