随笔分类 - c++
摘要:命令:g++ -Iinclude test.cpp -fPIC -shared -Wall -m64 -std=c++11 -O0 -g -o bin/test.so -g++: 编译器的名称 -Iinclude: 添加了一个头文件搜索路径,包含名为"include"的目录 test.cpp: 被编
阅读全文
摘要:(1) 字符串检索 事先将已知的一些字符串(字典)的有关信息保存到trie树里,查找另外一些未知字符串是否出现过或者出现频率。举例:1.给出N 个单词组成的熟词表,以及一篇全用小写英文书写的文章,请你按最早出现的顺序写出所有不在熟词表中的生词。2.给出一个词典,其中的单词为不良单词。单词均为小写字母
阅读全文
摘要:1.GCC 版本 6.3 2.安装asan yum install devtoolset-6-libasan-devel 3.注意 asan只是开发中使用工具,因此只能在debug模式下有效 不能用于release版本 介绍 首先,先介绍一下 Sanitizer 项目,该项目是谷歌出品的一个开源项目
阅读全文
摘要:compare_exchange_weak/compare_exchange_strong (是著名的CAS(compare and set))。参数传入期待值与新值,通过比较当前值与期待值的情况进行区别改变。a.compare_exchange_weak(b,c)其中a是当前值,b期望值,c新值a
阅读全文
摘要:#pragma oncetemplate<class T> //各类哈希函数size_t BKDRHash(const char *str){ register size_t hash = 0; while (size_t ch = (size_t)*str++) { hash = hash * 1
阅读全文
摘要:#ifndef _BIT_MAP_H#define _BIT_MAP_H #include<iostream>#include<vector>using namespace std; /**一个数据32位,40亿个整数,每个整数需用一位表示,40亿位就完事*/ class BitMap{public
阅读全文
摘要:很多学过C的人对malloc都不是很了解,知道使用malloc要加头文件,知道malloc是分配一块连续的内存,知道和free函数是一起用的。但是但是: 一部分人还是将:malloc当作系统所提供的或者是C的关键字,事实上:malloc只是C标准库中提供的一个普通函数 而且很多很多人都对malloc
阅读全文
摘要:原始需求:使用stl容器装载atomic#include <atomic> #include <vector> int main(void) { std::vector<std::atomic<int>> v_a; std::atomic<int> a_i(1); v_a.push_back(a_i
阅读全文