自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (2)
  • 收藏
  • 关注

原创 C++ 归并排序 《剑指offer2》 链表排序

};return l1;return l1;主函数中也是用了递归的一个思想,其实递归这个东西,靠感觉,题做多了自然就会了。这道题就是个缝合怪,用快慢指针找到中间节点,分开,在有序的合并。分而治之的理念体现的淋漓尽致。

2022-04-15 17:36:44 1013

原创 c++模板模板参数,可变数量的模板参数

模板模板参数是 C++ 中强大的特性,它使得我们能够编写更通用、可复用的代码,并在处理不同的模板类型时提供灵活性。然而,使用模板模板参数时需要谨慎,确保正确理解其语法和限制,并在需要时进行适当的模板实参推断。:模板模板参数有一些限制。此外,模板模板参数也受到模板参数推断的限制,因此在某些情况下可能需要显式指定模板实参。当使用模板模板参数时,我们可以将一个模板作为另一个模板的参数,从而实现更大的灵活性和重用性。通过将容器类型作为模板模板参数传递,我们可以在算法或函数中使用容器的成员函数或特定操作。

2023-11-25 15:50:58 187

原创 使用别人编译的动态库gdb,路径不匹配

命令将动态库路径替换为本地路径,使 GDB 能够正确找到动态库并在其中设置断点。但在调试过程中,如果你需要查看动态库的源代码,你需要确保你本地的源文件路径与动态库的源文件路径一致。如果你在调试时需要在动态库中打断点,但动态库的路径是别人的路径,可以使用 GDB 的。命令查看已加载的动态库列表,并记录下包含需要调试的代码的动态库的名称和路径。命令将动态库路径替换为你本地的路径。例如,假设动态库的名称为。命令将动态库路径替换为你本地的路径。命令将动态库的源文件路径添加到 GDB 的源文件搜索路径中。

2023-08-21 17:42:23 220

原创 linux geogle test教程及TEST_F,TEST_P宏用法

这样,同一个TestFixtureName下的每个TEST_F都会先执行SetUp,最后执行TearDwom。从上图可以看到,先使用第一个命令查到所有testcase的名字,在通过第二条命令筛选特定的testcase运行,并且可以使用通配符。如果发现自己编写了两个或多个对相似数据进行操作的测试,可以使用 test fixture 来为多个测试重用这些相同的配置。,直接执行,就全跑一遍,很耗时,有时候需要只测试某个case,怎么只运行某个测试用例呢?函数及其判断条件,如下表。,并根据断言失败的种类,

2023-05-19 11:56:42 2007

原创 Mac 进程管理器(基于OpenBSM)

使用OpenBSM库对macOS进行实时审核,使用名为auditpipe的特定设备,位于/dev/auditpipe中获取实时的审计事件,重点关注进程的创建和退出。

2023-03-17 17:30:12 525

原创 QT QComboBox+QTreeView 实现二级或多级菜单并带滚轮

按我的理解就是QT的控件时基于MVC架构的item相当于模型,treeview相当于视图层,而我们操作控件相当于控制层。他们是一个整体,这里相当于是给combobox这个控件设置了一个treeview的视图,而元素是属于box的,所以model应该给box。创建的QStandardItem为什么吗不给treeviee而是给combobox?实现方式创建个widget把这个box塞进去。

2023-02-16 14:57:28 2676 1

原创 QT qlineargradient 设置背景渐变

刚开始我直接把UI写的代码考到widget的stylesheet发现根本不行,必须要使用QT的qlineargradient。spread:pad:渐变的模式为 pad,另外的两个模式为 repeat、reflect。作为一名初级开发,开发之初UI设计师给了我客户端的设计图纸,其中就有设计背景渐变。渐变过程:x代表左右 y代表上下,坐标可以写个demo去试试。要求是从上的蓝往下渐变成白。

2023-02-16 10:46:45 1008 1

原创 奇虎360嵌入式实习面试面经

6月多面的,已经过去一个多月,虽然面试过了,但由于不能马上去,申请offer时被锁了,补个面经吧,整个过程问项目+八股+反问,项目的话被问到不会的了,等下详细介绍,八股的话问到的都是我复习过的,全部都答对了。介绍项目,问的是我写在简历最上面最详细的项目,是一个高并发的服务器,当时是被问到了服务器是如何实现并发,这里主要是线程池,但是当被问到数据库访问是如何实现并发的,这里由于我数据库用的是sqlite3,没有事务功能,且我不会mysql,数据库方面知识存在漏洞,这里的话是需要学习mysql事务和锁相关的知识

2022-07-08 14:49:45 834

原创 360行车记录仪开发日志(服务端开发)(四)共享内存访问优化

IPC通信,进程间通信,服务器开发,共享内存

2022-05-13 21:48:35 443

原创 2022西山居seed游戏开发训练营笔试复盘

1.c基础 char arr1[] = { 'a','b','c','b'}; char arr2[] = { "abcd" }; int arr3[10] = { 0 }; //arr1和arr2的区别 cout << sizeof(arr1) << endl; cout << sizeof(arr2) << endl; //整型数组长度求法 cout << sizeof(arr3)/sizeof(arr3[0]) &l

2022-05-08 22:46:31 3220 7

原创 360行车记录仪项目开发日志(服务端开发)(三)32位CRC校验 c++代码实现

c++服务器开发,c++CRC32位校验和代码实现

2022-05-03 11:14:45 1898

原创 360行车记录仪项目开发日志(服务端开发)(二)前后置服务器通信

高并发服务器开发 ,前后置服务器分离,IPC进程间通信,共享内存

2022-04-27 11:08:49 1426

原创 c++服务端开发心跳机制

高并发服务器开发,服务器心跳机制

2022-04-26 22:25:46 2346

原创 c++面试经验 | 锐捷网络嵌入式委培班 (二)Linux 生产者消费者模型

锐捷网络嵌入式委培班 Linux内核 生产者消费者模型 循环队列的使用 互斥锁,信号量,死锁

2022-04-21 21:51:19 790

原创 c++ 字符串拼接,不同格式合并 c++的sprintf

stringstream 类:这里给出的 C++ 代码描述,会写的相对繁琐一些,目的是为了给大家讲一种新的字符串使用技巧。C++ stringstream 类是一种十分有用的类,特别是当我们需要在程序中使用字符串和数字数据互相转换的时候。要想在程序中使用 stringstream 类,我们需要在源程序文件中包含头文件include<sstream>。stringstream 对象的使用方法与 cout 对象和 cin 的使用方法基本相同。>> 这个符号就很形象,比如:

2022-04-15 09:32:35 948

原创 c++字符串分割(待扩展)

#include <iostream>#include <bits/stdc++.h>using namespace std;int main(){ string str = "247+38"; int pos = str.find('+'); string s1 = str.substr(0, pos); string s2 = str.substr(pos + 1, sizeof(str)); cout << s1 .

2022-04-11 08:35:46 499

原创 2022年第十三届蓝桥杯省赛c++ a组真题

2022年第十三届蓝桥杯省赛c++ a组真题

2022-04-09 14:58:55 3970 11

原创 位运算之详细32位二进制数的操作 遍历32位二进制数的各个位 32位二进制数1的个数

不多说,上代码#include <iostream>#include <bitset>using namespace std;//5的原码 00000000 00000000 00000000 00000101//反码 正数的反码和原码一样//补码 正数的补码和原码一样//-5的原码 32位二进制第三十二位为符号位 10000000 00000000 00000000 00000101//反码 除符号位不变其余位取反 11111111 11111111 11.

2022-04-03 08:50:35 1320

原创 c++ double 类型如何四舍五入精度控制

#include <iostream>#include <iomanip>using namespace std;int main(){ double x = 3.141592654; printf("%.3lf\n", x); printf("%.10lf\n", x); cout << (int)(x * pow(10, 3) + 0.5) / pow(10, 3) << endl; co.

2022-04-02 22:13:31 2616 1

原创 c++ 面试摘录(四) | 虚函数的实现机制 继承下的虚表结构

虚函数通过虚函数表来表现。虚函数表存放的内容:类的虚函数地址。虚函数表建立时间:编译阶段,程序的编译过程中会将虚函数的地址放在虚函数表中。在类对象的内存空间保存了指向虚函数表的指针(虚表指针)通过虚表指针找到对应的虚函数表。虚表指针保存的位置:类对象内存空间的最前面,这是为了正确取到虚函数的偏移量。注:虚表和类绑定,可以说虚表只有一张。虚表指针和类对象绑定,一个类的每个对象都有自己的虚表指针,用来指向类的虚函数表。继承下的虚表结构假设如果派生类没有重写基类的虚函数A,

2022-03-25 15:41:53 624

原创 析构函数的注意问题以及用new开出来的空间用free释放会怎样 | c++进阶学习一条龙(四)

析构函数的注意问题以及用new开出来的空间用free释放会怎样

2022-03-25 10:42:16 1745

原创 类模板使用,用模板类实现单例模式 | c++ 进阶学习一条龙(二)

不用复杂长到不想看的文章,几句话,测试代码运行一遍,马上了解模板#include <iostream>#include <bits/stdc++.h> //c++万能头using namespace std;template<typename T>class Singleton{private: static T* instance;//私有的类对象静态指针public: static T* getIntance();//公有的静态

2022-03-25 09:05:19 339

原创 构造函数有哪几种,需要注意的问题 | c++ 进阶学习一条龙(三)

深度分析构造函数,带你了解隐式转换,深拷贝浅拷贝,以及c++11的移动构造函数,不需要长篇大论的文章,几个测试实例轻松解决#include <iostream>using namespace std;class student{ int age; int num;public: //默认构造 student(); //有参构造 student(int age,int num); //拷贝构造 student(stud

2022-03-23 21:25:59 263

原创 c++面试摘录(三) | 右值引用

/* 字面量 5、10,它们既没有名称,也无法获取其存储地址 (字面量通常存储在寄存器中,或者和代码存储在一起),因此 5、10 都是右值。*/ int num=5; //int &a=5; 这种情况属于左值引用 无法操作右值 int &a=num; int &&b=10;//通过右值引用操作右值 cout<<a<<" "<<b;...

2022-03-23 17:29:57 486

原创 友元函数和友元类的使用 | c++ 进阶学习一条龙(一)

类的友元函数是定义在类外部,但有权访问类的所有私有(private)成员和保护(protected)成员。尽管友元函数的原型有在类的定义中出现过,但是友元函数并不是成员函数。因为友元函数不是成员函数所以没有this指针,则参数要有几种情况:要访问非static成员时,需要对象做参数;要访问static成员或全局变量时,则不需要对象做参数;#include <iostream>#include <bits/stdc++.h> //c++万能头using name.

2022-03-22 22:05:31 355

原创 c++面试经验 | 锐捷网络嵌入式委培班 (一)

今天参加了锐捷网络在我们学校开设的委培班,以为讲的东西不会很难,内容也确实不难,都是基础,但我都不会,突然考c的内容,让我措不及防,每个公司都会有考校的侧重点,而锐捷网络我听他们的面试官说c的内容是很重要的,而且做c++的不会c也不行啊,下面就来看看他们给出的一些重点:1.运算符若d为double型变量,则表达式d=1,d+5,d++的值是多少 答案是1.0逗号运算符确保操作数被顺序地处理:先计算左边的操作数,再计算右边的操作数。右操作数的类型和值作为整个表达式的结果。左操作数只是为了副作用需要

2022-03-12 18:40:47 1200

原创 c++面试摘录(二) unordered_map和map的底层原理

unordered_map和map的底层原理

2022-03-11 15:11:42 9138

转载 AVL树(平衡二叉树)的底层原理以及实现

前言Wiki:在计算机科学中,AVL树是最早被发明的自平衡二叉查找树。在AVL树中,任一节点对应的两棵子树的最大高度差为1,因此它也被称为高度平衡树。查找、插入和删除在平均和最坏情况下的时间复杂度都是{\displaystyle O(\log {n})}。增加和删除元素的操作则可能需要借由一次或多次树旋转,以实现树的重新平衡。AVL 树得名于它的发明者G. M. Adelson-Velsky和Evgenii Landis,他们在1962年的论文《An algorithm for the org...

2022-03-11 14:15:04 1141 2

原创 计算机二级c++试题分析 循环队列

循环队列元素个数计算

2022-03-10 14:50:49 1714

原创 面试问题摘录(一)c++类对象的初始化顺序

c++类对象的初始化顺序,有多重继承的初始化顺序#include <iostream>using namespace std;class A{ public: A(){ cout<<"A"<<endl;} virtual ~A(){ cout<<"~A"<<endl; }};class B: public A{ public: B

2022-03-08 23:13:12 1452 3

原创 位运算算法题 数字的补数

对整数的二进制表示取反(0 变 1 ,1 变 0)后,再转换为十进制表示,可以得到这个整数的补数。例如,整数 5 的二进制表示是 "101" ,取反后得到 "010" ,再转回十进制表示得到补数 2 。给你一个整数 num ,输出它的补数。就拿5为例,5的二进制数是101,取反是010也就是2,如何的到010呢?就是101和111的异或运算得到的;那111又是怎么来的呢?因为8>5>4,8-1=7,7的二进制数就是111也就是8-1,1000-0001;...

2022-03-03 20:20:20 233

c++嵌入式软件面试总结

c++嵌入式软件面试总结

2022-07-08

CRC-32,CRC-8校验c++实现.pdf

CRC-32,CRC-8校验c++代码实现,直接使用,应用于通信检查

2022-05-03

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除