标签: C++标准库
-
C++对一个有序序列
[first, last)
(first
、last
都是iterator
,可简单理解为位置指针),以及指定值v
,标准库直接提供二分查找的函数std::lower_bound
和std::upper_bould
: -
std::vector
有两个大小: -
智能指针在现代 C++里用得越多。以前只知道它大致的原理,比如使用引用计数。但很多实现细节并不清楚,最直接的,它是如何实现多线程安全的?今天找了 gnu c++ library 的实现好好看了一下。
-
看到网上有片段,提到没有必要自己实现自旋锁,因为标准库的 std::mutex 和现在的自旋锁的实现没有两样。比较好奇,翻了一些资料,试图找到答案。
-
std::thread
是 C++ 11 新引入的标准线程库。在同样是 C++ 11 新引入的 lambda 函数的辅助下,std::thread
用起来特别方便: -
std::tuple
的原理并不复杂,但有些细节非常有意思。其中有一个是至少在gnu C++ std
的实现中,std::tuple
是倒序存储的: