自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(68)
  • 收藏
  • 关注

原创 VS的使用时遇到了basePath不能是相对路径的问题,如何处理?

如何解决:去右键点击解决方案,选择属性-》调试-》命令中的参数被设置为相对路径。就可以解决以上的问题了。原因:文件库的路径存在问题,需要把相对路径改为绝对路径。

2023-10-23 14:10:47 426

原创 【安全体系架构】——SIEM架构

(SIEM)架构是一种综合性的安全管理系统,旨在监控、检测、报告和应对安全事件和威胁。SIEM系统集成了,包括日志收集、事件管理、威胁检测和响应,以提供组织全面的安全信息视图。SIEM架构有助于实时监控网络活动,检测异常行为,及时识别潜在的安全威胁,并采取措施来应对事件。

2023-10-18 00:18:14 626

原创 【安全体系架构】——防御深度架构

防御深度架构强调了多层次的安全措施的综合使用,以应对不断演变的网络威胁。这个模型的关键是多层次的安全控制,每一层都提供额外的保护,即使攻击者能够绕过一层安全措施,其他层次的安全控制仍然可以发挥作用。的安全模型,旨在通过在网络和系统的各个层次上部署多个安全措施,以抵御不同类型的威胁和攻击。防御深度架构的目标是提高整体的网络和信息安全性,以确保即使一层受到攻击,其他层次的防御仍然有效。这些层次可以包括网络层、主机层、应用程序层和数据层。在数据层,安全措施包括数据加密、数据备份和恢复策略、数据分类和访问控制。

2023-10-18 00:15:18 702

原创 【安全体系架构】——零信任网络架构

零信任网络架构是一种网络和信息安全模型,它将传统的信任模型颠覆,不再信任内部或外部用户、设备或网络。相反,它将每个访问请求都视为不受信任,要求对每个用户、设备和流量都进行认证和授权,即使它们位于内部网络也一样。零信任网络架构强调了对网络资源的最小化最小权限原则以及精细的访问控制,以提高网络的安全性。

2023-10-18 00:11:42 747

原创 SVG图形

SVG(Scalable Vector Graphics)是一种用于描述二维矢量图形的XML 格式文件。它是一种用于在网络上显示图形的开放标准,旨在与Web上的其他技术(如HTML和CSS)集成,并支持在不失真的情况下缩放和调整大小。SVG 图形可以以矢量形式表示,这意味着它们由一系列的数学公式和形状描述组成,而不是像位图图像(如JPEG 或PNG)那样由像素组成。

2023-10-17 23:54:44 515

原创 【信息对抗课程设计】——基于公私钥加密的C/S架构数据加密上传软件

随着信息技术的发展,数据的安全性和保密性变得越来越重要。在计算机网络通信中,数据的加密是一种常见的保护机制,它可以防止未经授权的访问者窃取、篡改、伪造或泄露数据。基于公私钥加密的方法是一种常见的加密技术,它使用一对密钥(公钥和私钥)来进行加密和解密操作。公钥用于加密数据,私钥用于解密数据,从而实现安全的数据传输和存储。私人数据在网络传输和存储中面临着各种安全威胁,例如黑客攻击、数据泄露、恶意篡改等。

2023-10-15 23:46:35 111

原创 【git的使用方法】——上传文件到gitlab仓库

比如:我的仓库名字为zhuox这里的话我需要拷贝的项目是t3输入命令ls,就可以查看该文件目录下的所有文件信息我这边输入的是 : git add t3我这边输入的是:git commit -m “t3”

2023-10-13 15:53:07 956

原创 【C++】——互斥锁的使用(lock_guard)

在这个示例中,创建了一个名为 lock 的 std::lock_guard 对象,构造函数中传入了互斥锁 mtx。当 std::lock_guard 对象构造时,互斥锁 mtx 将被锁定。随着作用域的结束,lock 对象被销毁时,会自动解锁互斥锁 mtx。std::lock_guard 在构造时会锁定传入的互斥锁,并在对象生命周期结束时自动解锁互斥锁。这样可以确保在作用域结束时,互斥锁一定会被正确地解锁,避免了因为程序流程异常或者忘记解锁造成的死锁的风险。,只能在其生命周期结束时。

2023-10-12 20:55:59 268

原创 MP3文件的构成

MP3文件由三部分构成,分为**ID3V2**、**音频数据(Frame)**和**ID3V1**构成。1:当读取一个MP3文件时,首先会读取的是ID3V2标签,然后才是音频数据和ID3V1标签。2:ID3V2标签是MP3文件的元数据信息,通常位于文件的开头。它包含了歌曲的标题、艺术家、专辑、封面等信息。ID3V2标签的大小可以通过读取标签头部的信息来确定。3:在读取ID3V2标签后,才会读取音频数据部分。音频数据包含了实际的音频内容。4:最后,如果存在ID3V1标签,它通常位于文件的末尾。I

2023-10-10 23:47:59 141

原创 【面试刷题】——Linux基础命令

Linux基础命令是在Linux操作系统中执行常见任务的一组命令。以下是一些常用的Linux基础命令,它们用于管理文件系统、执行系统任务、查看文件内容等。

2023-09-18 01:22:55 2858 2

原创 【面试刷题】——指针存的是什么

当你创建一个指针变量时,它会指向另一个变量的内存地址,从而允许你通过该指针来访问和操作该内存地址上的数据。指针的主要作用是引用其他变量,使你可以在程序中间接地访问和修改这些变量的值。**指针(Pointer)**是一种用于存储变量或数据对象内存地址的数据类型。指针存储的是内存地址,这个内存地址指向计算机内存中的某个特定位置,这个位置存储着实际的数据。

2023-09-16 23:43:00 172

原创 【面试刷题】——什么是面向过程 什么是面向对象

"面向过程"和"面向对象"是两种不同的编程范式,它们描述了程序的设计和组织方式。

2023-09-16 23:41:52 426

原创 【面试刷题】——堆栈窗口

堆栈窗口”(Stack Window)通常不是一个特定的编程术语,但可以用来描述在编程和计算机科学领域中一些相关的概念。这些概念涉及到堆栈(stack)和窗口(window)等术语的组合。

2023-09-16 23:40:10 368

原创 【面试刷题】——TCP三次握手,以及为什么要三次握手

TCP(传输控制协议)的三次握手是建立TCP连接的过程,它确保了通信双方的正常启动和参数协商。

2023-09-16 23:38:30 387

原创 【面试刷题】——函数指针和指针函数

函数指针”(function pointer)和 “指针函数”(pointer to function)是两个不同的概念,它们涉及到指针和函数的结合使用。

2023-09-16 23:36:44 290

原创 【面试刷题】——C++四种类型转化

通过使用构造函数或成员函数,用户可以定义自己的类型转换规则,将一个自定义类型转换为另一个类型。这种类型转换称为用户自定义的类型转换或自定义类型转换操作符。cpppublic:private:// 用户自定义类型转换。

2023-09-16 23:34:24 264

原创 【面试刷题】——C++公有继承保护继承和私有继承

在C++中,有三种继承方式:公有继承(public inheritance)、保护继承(protected inheritance)和私有继承(private inheritance)。这些继承方式决定了派生类如何继承基类的成员和访问权限。

2023-09-16 23:31:37 469

原创 【面试刷题】——C++虚函数原理

C++中的虚函数是面向对象编程中的一个关键概念,它允许多态性(Polymorphism)的实现,使得在运行时能够根据对象的实际类型来调用正确的函数。虚函数的原理涉及到虚函数表(vtable)和虚函数指针(vptr)的概念。

2023-09-16 19:36:30 374

原创 【面试刷题】——C++的特点简单说明

总之,C++是一种功能强大、灵活多样的编程语言,适用于各种应用领域,包括系统编程、游戏开发、嵌入式系统、科学计算等。然而,由于其灵活性和强大性,也需要程序员具备高度的责任感和谨慎,以确保代码的正确性和安全性。C++具有丰富的标准库,包括容器(如向量、映射、队列)、算法(如排序、搜索、转换)、输入/输出等,提供了大量的工具和数据结构,可用于快速开发应用程序。C++允许手动管理内存,这意味着程序员可以直接控制内存的分配和释放,但也需要负责避免内存泄漏和访问无效内存。这使得可以根据具体问题选择最合适的编程方式。

2023-09-16 19:33:25 309

原创 【面试刷题】——匿名函数。匿名函数能不能当槽函数

在这个示例中,我们使用 Lambda 表达式作为匿名函数槽来处理 QObject::destroyed 信号,当 sender 对象被销毁时,Lambda 表达式中的代码会执行。在Qt中,**匿名函数(Lambda 表达式)**是可以用作槽函数的。Lambda 表达式可以作为信号和槽的槽函数,以处理信号发射时的事件。这样可以使代码更加简洁和直观,而不必为每个信号都创建一个单独的槽函数。请注意,Lambda 表达式中的捕获列表([&])用于捕获当前上下文的变量,以便在槽函数中使用。

2023-09-16 16:48:58 399

原创 【面试刷题】——Qt信号和槽的默认连接方式

需要注意的是,默认的直接连接适用于许多常见情况,但在多线程应用程序中使用时需要小心,因为它可能导致线程间的竞态条件。在直接连接中,当信号发射时,关联的槽函数会立即在发射信号的线程上执行。如果信号和槽属于同一线程,那么槽函数会在同一线程上执行。如果信号和槽属于不同线程,槽函数也会在信号所在线程上执行,而不会切换到槽函数所在线程。这意味着当你使用 QObject::connect() 连接信号和槽时,如果没有显式指定连接方式,Qt会默认使用。在Qt中,信号和槽的默认连接方式是。

2023-09-16 16:43:36 412

原创 【面试刷题】——Qt事件处理器级别的划分

你可以创建自定义事件处理器,用于处理自定义事件类型。自定义事件处理器通常继承自QObject,并实现自定义事件的处理函数。通过QCoreApplication::sendEvent()或QCoreApplication::postEvent()等方法,可以向自定义事件处理器发送自定义事件。

2023-09-16 16:40:16 497

原创 【面试刷题】——Qt事件处理器

除了处理内置事件类型,你还可以创建自定义事件类型,并使用QEvent派生类来传递自定义数据。这允许你在应用程序内定义和发送自定义事件。

2023-09-16 16:36:48 309

原创 【面试刷题】——Qt使用的编译器

Qt可以使用多种不同的编译器,具体取决于你的开发环境和目标平台。

2023-09-16 16:33:46 928

原创 【面试刷题】——Qt信号和槽最常用的连接方式他们区别是什么

在Qt中,信号和槽的连接方式有几种,但其中最常用的连接方式是直接连接(Direct Connection)和队列连接(Queued Connection)。它们之间的区别在于信号发射时槽函数的执行方式和线程之间的关系。

2023-09-16 16:31:11 200

原创 【面试刷题】——Qt的信号和槽你了解哪些

你可以自定义信号和槽,使其满足特定的应用需求。只需要在QObject派生类中声明信号和槽,并使用Q_OBJECT宏进行标记。

2023-09-15 17:42:58 292

原创 【面试刷题】——对QT的了解

Qt(发音为"cute")是一个跨平台的C++应用程序开发框架,最初由Qt公司(前Nokia,现在是Digia的一部分)开发,并开源发布。Qt提供了一套丰富的库和工具,用于开发图形用户界面(GUI)应用程序、网络应用程序、嵌入式应用程序等。

2023-09-15 17:25:01 268

原创 【面试刷题】——生产者和消费者模型

生产者和消费者模型是一种经典的多线程并发编程模型,用于解决生产者和消费者之间的协作和资源共享问题。在这个模型中,有两类线程:生产者线程和消费者线程,它们共同操作一个有限的缓冲区,生产者线程将数据放入缓冲区,而消费者线程从缓冲区取出数据。主要目标是确保生产者不会在缓冲区满时继续生产数据,消费者不会在缓冲区空时继续消费数据,以避免竞态条件和资源竞争。

2023-09-15 16:51:56 143

原创 【面试刷题】——什么是深拷贝和浅拷贝?

深拷贝(Deep Copy)和浅拷贝(Shallow Copy)是在编程中用来描述对象拷贝的两个概念,特别是在涉及对象包含其他对象(如嵌套数据结构、指针等)的情况下。

2023-08-22 13:57:08 539

原创 【面试刷题】————STL中的vector是如何实现的?

STL(Standard Template Library)是C++标准库中的一部分,它提供了许多常用的数据结构和算法,其中包括了动态数组 vector。STL中的vector是如何实现的

2023-08-22 13:22:37 488

原创 级联分类器的使用——车辆检测

级联分类器是一种用于对象检测的机器学习算法,它通过级联的方式对图像进行多次分类,从而实现高效的目标检测。在本文档中,我们将介绍如何使用级联分类器进行目标检测,并提供相关的代码示例。

2023-08-01 01:29:40 167

原创 如何创建自己的OpenCV级联分类器

CascadeClassifier级联分类器:那么如果只是识别车辆,那就需要把车辆需要相关信息全部统计出来(颜色、形状、大小等信息),存储在一个文件中。这个文件就叫级联分类器。级联分类器也是机器视觉和机器学习中非常重要的一个环节。

2023-07-29 21:19:44 143

原创 sizeof和strlen的区别——【C/C++面试刷题】

1:首先,sizeof是运算符,而strlen是函数。2:其次,strlen函数计算时候是不加最后的的结束标志‘\0’的,其表示的是字符串长度。3:而sizeof求的是字符所在内存中的长度,是加上’\0’来计算的。

2023-07-28 18:41:57 45

原创 Linux系统下安装Qt教程

QT在Linux系统下、ubuntu系统下的安装过程

2023-07-18 22:29:46 1838

原创 QT运行时出现cannot find -IGL怎么解决-【QT】

输入完sudo apt-get install libgl1-mesa-dev命令后,回车运行就会出现如下图所示的界面,这边注意如果运行不了,你就得检查一下自己登录的是不是超级管理员账户了。当你第一次在Linux系统下安装了Qt软件,并第一次运行,但是出现了cannot find -IGL保错,这个时候应该怎么办?出现下图表示,安装完成,运行Qt程序就不会出现上述问题了。

2023-07-18 15:38:27 651 1

原创 服务器出现Address already in use(地址占用)错误怎么处理——【Linux】

首先出现这种问题的原因是因为服务器频繁调用,导致前一个服务器运行没有完全结束,地址被占用,下一次调用该地址时候,显示地址被占用了。第二个方法就是在服务器bind()函数调用前加上一段以下代码,就可以避免这个地址调用问题了。第一个方法也就是最蠢的方法就是关闭终端后,等待几分钟后,出现打开终端然后运行服务器代码。

2023-07-14 19:21:28 3411

原创 如何使用QT去实现一个登录窗口的界面设计——【QT学习】

在头文件里面先声明了标签类QLabel、编辑框类QLineEdit、按钮类QPushButton、以及页面布局:水平布局和垂直布局来实现的登录窗口的设计。

2023-07-14 02:36:02 873

原创 VS出现无法打开源文件问题怎么办

VS出现无法打开源文件问题怎么办 打开工具-获取工具和功能。

2023-06-28 10:43:36 1246 1

原创 VS创建新项目及配置与Linux的连接器和简单调试运行程序

VS创建新项目及配置与Linux的连接器和简单调试运行程序

2023-06-28 10:35:21 1041

原创 VS2019安装教程

上图的左下角部分为安装盘符路径选择,可以自定,但切记路径中不可以出现任何中文包括中文符号也不可以,安装时需要选择需要安装的插件部分,不要看上图所示,需要安装的插件以下图所列为准。我是在windows下开发的连接Linux系统的C++语言开发,故选择以下插件。这里在进行安装文件的解压稍作等待。

2023-06-27 20:48:10 1169

FFmpeg相关的库(windows系统下)(C语言编码)

使用到FFmpeg解码视频文件的相关库

2023-05-16

空空如也

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

TA关注的人

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