C++
菜鸟&攻城狮
这个作者很懒,什么都没留下…
展开
-
读写锁 写优先
//先定义一个全局锁对象tg_rwlock g_rwlock;void test(){ { tg_rwlock::read_guard(g_rwlock); //读.......... } { tg_rwlock::write_guard(g_rwlock); //写.......... }}tg_rwlock.h#ifndef TG_RWLOCK_H#define TG_R...原创 2020-07-31 11:41:51 · 557 阅读 · 0 评论 -
共享内存传递结构体
https://www.cnblogs.com/kekeoutlook/p/8330336.html原创 2020-07-08 16:47:15 · 756 阅读 · 0 评论 -
二维vector初始化大小方法
1.直接用初始化方法名字为vec,大小为n*m,初始值为0的二维vector。 vector<vector<int> > vec(n, vector<int>(m, 0));2.用resize()来控制大小vector<vector<int> > vec; vec.resize(n);//n行 f...原创 2020-02-19 19:32:08 · 3473 阅读 · 0 评论 -
二叉堆 c++
https://www.cnblogs.com/skywang12345/p/3610382.html/** * 二叉堆(最大堆) * * @author skywang * @date 2014/03/07 */#include <iomanip>#include <iostream>using namespace std;template ...原创 2019-11-29 12:01:29 · 144 阅读 · 0 评论 -
c++ 删除vector所有元素
https://www.cnblogs.com/xuelei/p/7530645.html转载 2019-07-17 14:42:53 · 1678 阅读 · 0 评论 -
C++ 访问类指针时.和->的使用。
以下搜集于网络。简单来说,凡是指针都用->,其它都用点,“->”的前面一定是一个“指向结构体的指针”或“对象指针”,后面是结构或对象的一个"成员" 。如有:A->B,则可以肯定A是一个结构体指针或类的对象指针,而B是A中的一个成员。以你的便子为例:class A{...假设里面含有一个set()函数...}A a,*p;a是一个对象名,所以可以用a.set(),当然你还可...原创 2019-07-24 09:39:20 · 1617 阅读 · 0 评论 -
c++ map 和 unordered_map的区别
如果需要内部元素自动排序,使用map,不需要排序使用unordered_maphttps://www.cnblogs.com/gvlthu23061/p/7315893.htmlhttps://www.cnblogs.com/muziyun1992/p/6829051.html转载 2019-04-29 11:59:22 · 102 阅读 · 0 评论 -
typename 关键字 c++
auto map_builder = cartographer::common::make_unique<cartographer::mapping::MapBuilder>( node_options.map_builder_options);//告诉编译器node_options.map_builder_options是一个类,而非变量。...原创 2019-04-28 16:40:40 · 78 阅读 · 0 评论 -
C++ 随机数
在许多情况下,需要生成随机数。关于随机数生成器,有两个相关的函数。一个是rand(),该函数只返回一个伪随机数。生成随机数之前必须先调用srand()函数。下面是一个关于生成随机数的简单实例。实例中使用了time()函数来获取系统时间的秒数,通过调用 rand() 函数来生成随机数:#include <iostream>#include <ctime>...原创 2019-04-18 17:26:20 · 146 阅读 · 0 评论 -
C++ 数学运算
在 C++ 中,除了可以创建各种函数,还包含了各种有用的函数供您使用。这些函数写在标准 C 和 C++ 库中,叫做内置函数。您可以在程序中引用这些函数。C++ 内置了丰富的数学函数,可对各种数字进行运算。下表列出了 C++ 中一些有用的内置的数学函数。为了利用这些函数,您需要引用数学头文件<cmath>。序号 函数 & 描述1 double cos(doubl...转载 2019-04-18 17:23:58 · 204 阅读 · 0 评论 -
循环控制语句 C++
控制语句 描述break 语句 终止 loop 或 switch 语句,程序流将继续执行紧接着 loop 或 switch 的下一条语句。continue 语句 引起循环跳过主体的剩余部分,立即重新开始测试条件。goto 语句 将控制转移到被标记的语句。但是不建议在程序中使用 goto 语句。...原创 2019-04-18 17:19:01 · 161 阅读 · 0 评论 -
杂项运算符 C++
下表列出了 C++ 支持的其他一些重要的运算符。运算符 描述sizeof sizeof 运算符返回变量的大小。例如,sizeof(a) 将返回 4,其中 a 是整数。Condition ? X : Y 条件运算符。如果 Condition 为真 ? 则值为 X : 否则值为 Y。, 逗号运算符会顺序执行一系列运算。整个逗号表达式的值是以逗号分隔的列表中的最后一个表达式的值。.(点)和...原创 2019-04-18 17:15:15 · 308 阅读 · 0 评论 -
赋值运算符 C++
下表列出了 C++ 支持的赋值运算符:运算符 描述 实例= 简单的赋值运算符,把右边操作数的值赋给左边操作数 C = A + B 将把 A + B 的值赋给 C+= 加且赋值运算符,把右边操作数加上左边操作数的结果赋值给左边操作数 C += A 相当于 C = C + A-= 减且赋值运算符,把左边操作数减去右边操作数的结果赋值给左边操作数 C -= A 相当于 C = C - A*...原创 2019-04-18 17:13:34 · 171 阅读 · 0 评论 -
extern 存储类 C++
extern是用来在另一个文件中声明一个全局变量或函数。extern 修饰符通常用于当有两个或多个文件共享相同的全局变量或函数的时候,如下所示:#include <iostream> int count ;extern void write_extern(); int main(){ count = 5; write_extern();}第二个...原创 2019-04-18 17:10:25 · 948 阅读 · 0 评论 -
static存储类 C++
static存储类指示编译器在程序的生命周期内保持局部变量的存在,而不需要在每次它进入和离开作用域时进行创建和销毁。因此,使用 static 修饰局部变量可以在函数调用之间保持局部变量的值。static 修饰符也可以应用于全局变量。当 static 修饰全局变量时,会使变量的作用域限制在声明它的文件内。在 C++ 中,当 static 用在类数据成员上时,会导致仅有一个该成员的副本被类的...原创 2019-04-18 17:05:27 · 131 阅读 · 0 评论 -
const 关键字 C++
使用const前缀声明指定类型的常量,const类型的对象在程序执行期间不能被修改改变。如下所示:const type variable = value;#include <iostream>using namespace std; int main(){ const int LENGTH = 10; const int WIDTH = 5;...原创 2019-04-18 16:44:48 · 200 阅读 · 0 评论