![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++学习
文章平均质量分 67
poppick
这个作者很懒,什么都没留下…
展开
-
C++学习_多线程
C++/C本身并没有多线程的内容,需要使用pthread库, include,编译+ -lpthread, pthread是一个posix标准,在不同平台上有不同实现,这里以linux pthread库为准.参考https://computing.llnl.gov/tutorials/pthreads/#CreatingThreads一,线程的创建1,使用pythread_create原创 2013-06-12 10:43:13 · 571 阅读 · 0 评论 -
C++学习: 时间相关
C++常用的函数在中(或time.h)1,数据结构表示时间的数据结构有三个:time_t , tm和timeval time_t = long int, 用来表示绝对时间tm是一个struct,里边有如下成员: tm_sec(秒), tm_min(分),tm_hour(小时),tm_mday(天/月),tm_mon(月),tm_year(年),tm_wday(星期),tm_yda原创 2013-06-04 09:18:55 · 632 阅读 · 0 评论 -
C++学习:hash(unordered_map)
hash table是一个非常重要的数据结构,但目前版本的stl中并没有,C++11中会加入.目前版本的trl中有一个std::trl::unordered_map, 需要include 本文以这个实现为准.一,hash与map hash与map很像(从名字也看得出来: unordered_map vs map),包括各种操作的api和应用场景. hash的性能非常出色:拥有高达原创 2013-06-08 21:17:58 · 4630 阅读 · 0 评论 -
C++学习_特殊容器: bitset,stack,queue 和Priority Queues
一, Bitset 1,bitset是一个管理一系列布尔值的容器, 其长度是固定的,不能动态增长,如果需要动态增长,可以使用vector2,bitset定义了一系列布尔值运算有关的函数,例如: any/ none : 判断是否所有位都为0 set/reset,:将一个/所有值设为0,1 count 统计1的个数test 测试某位是否为1fl原创 2013-06-18 00:18:48 · 622 阅读 · 0 评论 -
C++学习_杂项
一,string1,与vector类似,string也面临重新分配空间的问题, 也有reserve(), capacity(),等一系列函数, 不过一个差别是string的reserve可以缩小容量,而vector不行2,string 也支持iterator,但string中的find等函数并不返回iterator,而是size_t (string::size_type)3,strin原创 2013-06-19 17:23:14 · 537 阅读 · 0 评论 -
序列容器:vector,deque,list
一,容器的通性1,将元素插入容器进行了一次拷贝操作,如果想要实现类似于”引用”的情况,可以用指针.2,容器中的元素是有序的,即用一个iter从begin遍历到end,多次运行得到的结果是相同的.3,一般有如下API:a) 构造函数通常有这三种:ContType c, ContType c1(c2),ContType c(beg,end)b) 支持各种赋值(=)和原创 2013-06-07 16:02:50 · 703 阅读 · 0 评论 -
C++学习_仿函数(functors)
仿函数,也称函数对象, 其实就是重载了括号运算符()的对象, 不过可以具有函数的一些性质, 可以在需要函数的地方(主要是各种容器和算法)使用.一,仿函数的优点:1,可以拥有状态, 可以在运行时动态地改变行为3,速度更快, (其实快不了多少)二,性质及应用1, 主要应用在map等容器的构造函数和各种STL算法上2,默认情况下是传值引用的, 也就是说仿函数的状态不会因算原创 2013-06-14 10:20:00 · 1261 阅读 · 0 评论 -
C++学习_IO:输入/输出
一:格式化字符串,常用规则的如下:我觉得C风格的输入输出比C++中的好用的多。格式化字符串比一堆堆“%[flags][width][.perc][F|N|h|l]typetype: %d %s %u %x %X %f %p等 这个最为常用,大家都熟悉~flags: 无: 右对齐,- :左对齐,注意左对齐是不能补0的(有歧义)0:在前面补0,需要跟width一起用原创 2013-06-04 23:42:33 · 530 阅读 · 0 评论 -
C++学习_关联容器(map,set)
一,map与hash map的基本功能是实现一个key-value存储,与hash很像,事实上在数据量不很大时map 经常当hash用,而hash在一些库中的名字也是unordered_map. map是用红黑树实现的,其插入,删除,查找的复杂度都是O(logn),而hash的插入,删除查找都是O(1). 因此当数据量很大时,map的性能不如hash,但数据量不很大(个人感觉在原创 2013-06-04 00:55:03 · 1117 阅读 · 0 评论