文档章节

std学习

y
 yizhangxyz
发布于 2017/04/07 09:49
字数 392
阅读 10
收藏 0

1.std::recursive_mutex 与 std::mutex ,recursive_mutex允许同一个线程对互斥量多次上锁(即递归上锁),来获得对互斥量对象的多层所有权,std::recursive_mutex 释放互斥量时需要调用与该锁层次深度相同次数的 unlock(),可理解为 lock() 次数和 unlock() 次数相同,除此之外,std::recursive_mutex 的特性和 std::mutex 大致相同

2.std::stringstream:简化类型转换
std::stringstream m_sstream; 
std::string result; 
int i=1000; 
m_sstream<<i; //int写入流
m_sstream>>result; //流写到字符串
std::cout<<result<<"\n"; 
 

3.uint64_t total_award = std::accumulate(ai.begin(), ai.end(), 0, [](auto& l, auto& r){
            return l + r.second;//l是上一次调用的sum
        });//求区间内的和。

4.std::find。参数为一对迭代器,和一个给定的值。返回在迭代器之间等于第一个给定值的迭代器。                  if (std::find(vec.begin(), vec.end(), value) != vec.end()) {}

5. std::find_if(
    vec.begin(),
    vec.end(),
    [id](auto& item) {
        return item.id == id;
    })//在迭代器区间按照指定function查找

6.std::swap。交换2个容器。

7.std::map count函数,用于判断key是否存在
std::map<string,int> table;
string key = "A";
if(table.count(key))//如果键存在返回1,否则返回0
  cout<<table[key]<<endl;
}

8.std::thread。在创建thread的时候就会执行。

void test1(){ 
    cout << "hello test 1"<<endl; 
    while (true)
    {
    }
}
std::thread t1(test1);//创建就会执行
t1.join();//等待t1执行完毕,否则阻塞在这里

9.std::stoll C++11 将字符串转化成带符号整数

10.std:vector push_back()自动会调用ClassA(ClassA&& other)(如果有的话)来构造,emplace_back可以隐式转化,即自动调用对应的构造函数。

© 著作权归作者所有

共有 人打赏支持
上一篇: redis学习
下一篇: google proto buf学习
y
粉丝 1
博文 67
码字总数 42366
作品 0
成都
私信 提问
你们以为我在学C++?其实我在学 Python

我在用 C++ 来学习 Python. 不信?来跟着我学? 字面量 Python 早在 2.6 版本中就支持将二进制作为字面量了[1], 最近 C++14 逐步成熟,刚刚支持这么干[2]: static const int primes = 0b1010...

铁扇公主1
2017/04/28
91
0
为std::tuple增加格式化/序列化能力

转载请注明出处。谢谢 C++11中有很多激动人心的特性,但是相应的使得C++更加复杂。。。 新标准还修改了原有标准库,并增加了很多内容。 在学习新标准的过程中动手写了个 为std::tuple增加格式...

江浸月
2013/02/18
0
0
boost库之时间和日期

最近在学习boost库,想来对C++了解的人,应该都不陌生吧,以前没怎么注意过,也从来把注意力放到数据结构和算法这一块,结果,一上班就被虐的的体无完肤,从而决心把boost过一遍,趁着之前还...

风雅轩
2017/10/28
0
0
C++ Primer读书笔记-ch01

Chapter 1. Getting Started 1.1 Writing a simple C++ Program 对于main函数而言,return 0表示一切正常,非0值表示有情况,具体含义由系统定义。 参考文档 gcc编译程序,经历如下过程: 预...

西昆仑
2016/03/29
36
0
C++TR1学习笔记之tuple

类模板tuple是STL中pair的一般化实现。 pair<T1, T2> --> tuple<T1, T2, T3, ...> 2. makepair -> maketuple , 例如: make_tuple(1, 1.23) 3. tuple中可以存放引用,用maketuple的话,可以用......

Favor
2013/03/10
0
0

没有更多内容

加载失败,请刷新页面

加载更多

20181213 上课截图

小丑鱼00
10分钟前
0
0
nginx+php-fpm配置后页面显示空白的解决方法以及用nginx和php-fpm解决“502 Bad Gateway”问题

https://stackoverflow.com/questions/15423500/nginx-showing-blank-php-pages For reference, I am attaching my location block for catching files with the .php extension: location ~......

Yao--靠自己
18分钟前
1
0
mac 没声音

somehow不时就会出现这种情况。之前都得重启。 其实可以直接在terminal里打以下命令: sudo kextunload /System/Library/Extensions/AppleHDA.kext sudo kextload /System/Library/Extension...

dubox
34分钟前
1
0
看完让你彻底搞懂Websocket原理

作者:Ovear 链接:https://www.zhihu.com/question/20215561/answer/40316953 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 额。。最高票答案没答到点...

时刻在奔跑
48分钟前
2
0
Spring Cloud Stream消费失败后的处理策略(一):自动重试

之前写了几篇关于Spring Cloud Stream使用中的常见问题,比如: 如何处理消息重复消费 如何消费自己生产的消息 下面几天就集中来详细聊聊,当消息消费失败之后该如何处理的几种方式。不过不论...

程序猿DD
50分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部