随笔分类 -  C++STL

摘要:今天在看effective modernc++的时候注意到了一个细节,在用c++11新标准遍历map时的参数的类型的key要为const,否则访问的是一个局部对象,这个我一直都没有注意到,现在复习一下: 查阅http://www.cplusplus.com/reference/map/map/?kw 阅读全文
posted @ 2019-11-07 16:27 manch1n 阅读(269) 评论(0) 推荐(0)
摘要:最近两天看了以下《The C++ Standard library》里介绍的并发模型。今天搞了一下午,排查了bug,终于搞定了: 总体来讲还是比pthread提供的接口要简洁。 定义task threadpool.h threadpool.cc 测试一下: 输出: 阅读全文
posted @ 2019-10-31 19:16 manch1n 阅读(852) 评论(0) 推荐(0)
摘要:今天在看源码的时候,面对以下有点蒙蔽,在这里对可变参数做一下总结。 主要理解取自一个博客,c版本的:https://www.cnblogs.com/bettercoder/p/3488299.html 示例输出如下: 更多详细解释请看: http://www.cplusplus.com/refere 阅读全文
posted @ 2019-05-03 01:01 manch1n 阅读(553) 评论(0) 推荐(0)
摘要:5.2.1 Class shared_ptr shared_ptr提供了一种强大的能力:当对象被多个指针指向时,如若需要释放,仅仅需要赋值nullptr即可使其引用计数减1,而不用担心显示delete后在其他模块的指针失效。先写点简单操作。 相关函数,仅限shared_ptr相关,不包括与weak, 阅读全文
posted @ 2019-01-26 23:44 manch1n 阅读(264) 评论(0) 推荐(0)
摘要:5.1.2 Tuple(不定值的数组) tuple的模板参数可以是任意的,带来巨大的便利性。其在头文件<tuple>内。定义如下: 需要注意的几个函数如下: tuple_size<idx, tupletype>::value tuple_element<idx, tupletype>::type 注 阅读全文
posted @ 2019-01-25 22:40 manch1n 阅读(310) 评论(0) 推荐(0)
摘要:5.1.1 Pair Class pair可将两个value视为一个单元,准确的说是Struct pair,定义与头文件<utility>中: 比较简单的操作就不介绍了,写几个比较少用的。 建立一个pair,元素类型分别为tuple T1,T2,以tuple t1和t2的元素为初值。 其中分段构造( 阅读全文
posted @ 2019-01-25 22:14 manch1n 阅读(187) 评论(0) 推荐(0)
摘要:因为在写一些算法题,一般的在线编译器好像都是用vector作为参数,所以有必要对vector总结一下: 7.3 vector vector的本质是一个动态数组(dynamic array),类似于c用malloc分配空间。在<vector>头文件内,vector的定义如下: 注意:第二个模板参数可省 阅读全文
posted @ 2019-01-25 00:17 manch1n 阅读(216) 评论(0) 推荐(0)