BugMaker

Create bugs to solve problems

【设计模式】迭代器模式

什么是迭代器通过迭代器可以顺序访问容器内的数据 迭代器模式迭代器是一种行为设计模式, 让你能在不暴露复杂数据结构内部细节的情况下遍历其中所有的元素。 迭代器使用场景 统一容器类的遍历方式 在不暴露原有数据下,使用不同的方式来遍历整个整合对象 使用迭代器模式在新增容器类的时候,修改更加方便。 缺点: 增加类的设计复杂度 具体实现为了考虑到多类复用,我们直接上模板 1、Iterator.h......

Linux多进程通信基础

1、Linux系统中进程的概念,以及创建进程 在Linux中主要提供了fork、vfork、clone三个进程创建方法。 //头文件#include <sys/types.h>#include <unistd.h>int main(){ printf("process id is :%d \n",getpid()); pid_......

【C++】手撕STL之vector

具体实现就是维护一个原生数组,看代码就行了,这里只是简单的实现 #include <iostream>template<typename T>class vector{private: T* data = nullptr; int size = 0; int capacity = 0; inline void checkMemory(......

【C++】手撕memcpy基础函数

手撕字符串函数,包括: memcpy memmove strcpy strcat strcmp strstr memcpy memcpy函数是c和c++使用的内存拷贝函数, 函数原型是:void memcpy(voiddest, const void *src, size_t n); 表示由src指向地址为起始地址的连续n个字节的数据复制到以dest指向地址为起始地址的空间内。与st......

【C++】手撕STL系列之智能指针

手撕STL系列之智能指针 C++11智能指针: shared_ptr: 基于引用计数实现 unique_ptr: 不可以移动的智能指针 weak_ptr: 解决shared_ptr循环引用问题,更加类似于shared_ptr的管理指针工具。 shared_ptr shared_ptr是基于引用计数实现,可在生命周期内自动管理内存 我们先实现一个应用计数的类,用atomic实现,保证线程安......

【C++】手撕LRU算法

LRU LRU(Least Recently Used) 即最近最少使用,属于典型的内存淘汰机制。 该算法需要达到两个目的: 可以轻易的更新最新的访问数据。 轻易的找出最近最少未使用的数据。 所以要用到哈希表+双向链表实现。利用map,获取key对应的value是O(1),利用双向链表,实现新增和删除都是O(1)。 版本1:自己实现循环链表存储,没有用API /*************......

QtCreator远程调试及qBreakpad Dump分析

QtCreator远程调试及qBreakpad Dump分析 1、QtCreator远程连接Linux开发板调试 GCC:    arm-poky-linux-gnueabi-g++ (GCC) 5.3.0 开发板:arm-poky-linux-gnueabi-gcc ubuntu:  /opt/fsl-imx-x11/4.1.15-2.0.0/sysroots/x86_64-pokysdk......

Android12桌面小组件

前言 Anroid上的桌面小组件很早以前就有了,相比iOS的小组件一出来就大火不同,Android桌面小组件一直很难用,最近看到了Google微信号推送的文章: 更新您的 widget 以适配 Android 12 创造无限可能 | 在 Android 12 中使用 widget 我以为Android小组件间要崛起了!!开心的去看了[官网demo](user-interface-samp......

【C++基础进阶】class、struct、union

类class 类是面向对象中的特性,在c中是没有类的概念。通常用class来表示,cpp中有抽象类,但是没有接口这种说法,cpp支持多继承。 一个普通的类: class Fruit{ private: public: Fruit(); ~Fruit();};Fruit::Fruit(){}Frui......
c++

【C++基础进阶】const、static、volatile

Const const代表不可更改,和kotlin中const类似。 一般用法: const int i = 0;//errori = 2; 普通变量申明在顶层中,可以被其他文件访问。const只可以被本文件中的函数访问,可以使用extern来访问其他文件中的const变量。 指针与const: 指针与const配合使用有几种不同的情况 const在前,修饰数据类型 const in......
c++