自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

专注于C/C++/Linux领域创作

记录、学习、分享,仅此而已...

  • 博客(23)
  • 资源 (15)
  • 问答 (1)
  • 收藏
  • 关注

原创 思科计算机网络 | 第一章路由器概念测试题(一)

思科计算机网络,第一章测试。该测验涵盖第 1 章“CCNA R&S 路由与交换基础”中的内容。

2020-02-28 22:02:48 6713

原创 kali Linux 渗透测试 | ettercap图形界面(ARP 欺骗 + DNS欺骗)

最简单的局域网 arp欺骗 DNS 欺骗教程,全程图形化操作,傻瓜式使用。

2020-02-28 17:56:33 6574 1

原创 单例模式 | C++ | Singleton模式

Singleton 模式单例模式(Singleton Pattern)是 C++/Java等语言中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式实现了类只能创建唯一实例的功能。并且由该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。单例模式有三种经典的设计方案:...

2020-02-28 13:10:33 468

原创 思科网络学习笔记 | 路由概念

网络已经对我们的生活产生了重大影响。我们的生活、工作和娱乐方式都随之一变……注:本文转载自思科网络技术学院。链接:[https://lms-cn.netacad.com/](https://lms-cn.netacad.com/)仅用作个人学习、研究或者欣赏,如有侵权,请告知立即删除。

2020-02-28 12:21:32 2314

原创 python学习笔记(五)——静态方法、类方法、运算符重载

我们都知道类名是不能够直接调用类方法的。在C++中,把成员方法声明为 static 静态方法后可以通过类名调用。同样的在python中也可以通过定义静态方法的方式让类名直接调用。静态方法使用 @staticmethod 后紧跟着的方法为静态方法。class test: var = 10 @staticmethod def func(): print("...

2020-02-27 21:22:45 291

原创 python学习笔记(四)——面向对象编程

python 支持面向过程编程和面向对象编程。传统面向过程编程,也叫函数式编程,通过我们的需求设计成一个一个的函数来完成,对一些小规模程序来说面向过程确实简单方便不少。而随着互联网的发展,对于一些大型的项目来说,使用面向对象编程更具有优势,在后期的维护上也更加容易。面向对象编程有三大特性:封装、继承、多态。类的创建class 类名(父类名称): 类体# 其中类体包括 类成员,方...

2020-02-27 17:43:59 253

原创 python学习笔记(三)——函数

函数定义def 函数名(形参 . . . ) 函数体1. 函数参数返回值:可以有一个或多个形参:支持默认形参、关键字形参、可变参数形参等1.1 必须参数调用时传入的参数必须与定义时相同。# a,b 是必须参数或者叫位置参数def fun(a,b): return a,b,a+b调用:print(fun(2,3))输出:(2, 3, 5)2.2 默认参数调用...

2020-02-27 13:34:31 354

原创 C++ | 再探智能指针(shared_ptr 与 weak_ptr)

垃圾回收机制:程序运行过程中会申请大量的内存空间,而对于一些无用的内存空间,如果不及时清理的话,会导致内存使用完(内存溢出),导致程序崩溃。而对 C/C++ 语言来说,在栈上申请的空间由操作系统接管,系统会自动回收它,而在堆上申请的空间就需要我们程序人员自行进行分配了。垃圾回收机制,是系统防止程序发生内存泄漏的一种保护机制。作用呢就是将程序运行期间产生的垃圾(不再使用的数据),或对内存堆中已...

2020-02-26 20:19:47 412

原创 单例模式应用 | Shared_ptr引用计数管理器

在我们模拟设计 shared_ptr 智能指针时发现,不同类型的 Shared_ptr 不能使用同一个引用计数管理器,这显然会造成内存上的浪费。因此我们考虑将其设计为单例模式使其所有的 Shared_ptr指针 共享一个引用管理计数器 rm。具体实现如下:ps:在Node arr[10];语句 设计引用计数管理器的容量时可以考虑采用自动增长类型,如 STL 中的 vector 。/* 引用计数...

2020-02-26 17:47:25 982

原创 随笔——统计单词个数

要学会使用宏定义,善于使用宏定义可以让我们的程序阅读起来更加方便,逻辑更加清晰更易于理解。BEGIN 表示开始统计单词IN_WORD表示当前循环变量下标所指位置处于某一个单词中OUT_WORD表示,结束上一个单词的遍历,代表可以对计数加一END循环结束,在本程序中未使用#include <ctype.h>#define BEGIN 1#define IN_WORD 2...

2020-02-26 13:47:33 133

原创 随笔——算法笔记(未整理)

以下为一些日常收集算法笔记,由于各种原因没有时间整理,暂且记录如下。程序设计心得:如果在进行设计某个函数时,没有思路,可以选择引入新的变量引入新的函数结合画图板整理思路。曾经有某位大佬说过:“计算机科学领域的任何问题都可以通过增加一个间接的中间层来解决”,事实上也确实如此。二分查找#include <stdio.h>// 二分查找int Find(int* a...

2020-02-26 13:22:48 246

原创 C++ | 智能指针初探

智能指针初探在 c/c++ 语言中有一种特殊的类型——指针类型。指针作为实体,是一个用来保存一个内存地址的计算机语言中的变量。它可以直接对内存地址中的数据进行操作,是一种非常灵活的变量。指针被誉为是c语言的灵魂,而作为c语言的继承者c++来说更是继承了指针灵活多用的特点并把它发扬光大。在这里我们不去重点讨论普通的指针,而是讨论其中更为特殊的指针——智能指针。智能指针到底智能在哪?又为什么叫智...

2020-02-25 23:43:43 388

原创 排序 | 冒泡排序的优化与qsort快速排序

冒泡排序冒泡排序 Bubble_Sort,是极为简单的一种排序算法。虽然效率差一点,但好在具有结构简单,容易理解,易于操作等优点。冒泡排序就是把小的元素往前调或者把大的元素往后调。在相邻的两个元素间比较,交换也发生在这两个元素之间。冒泡排序是一种稳定排序算法,在排序后相同元素的前后顺序并没有改变。相比于传统的冒泡排序,平均时间复杂度为O(n2),最好的时间复杂度为2,是一种效率不高的的排序。...

2020-02-22 00:09:37 568 1

原创 C语言 | 栈区空间初探

栈的定义栈(stack)又名堆栈,堆栈是一个特定的存储区或寄存器,它的一端是固定的,另一端是浮动的 。对这个存储区存入的数据,是一种特殊的数据结构。所有的数据存入或取出,只能在浮动的一端(称栈顶)进行,严格按照“先进后出”的原则存取,位于其中间的元素,必须在其栈上部(后进栈者)诸元素逐个移出后才能取出。在内存储器(随机存储器)中开辟一个区域作为堆栈,叫软件堆栈;用寄存器构成的堆栈,叫硬件堆栈。...

2020-02-21 20:31:58 2232 2

原创 C++ | 虚函数表内存布局

虚表指针虚函数有个特点。存在虚函数的类会在类的数据成员中生成一个虚函数指针 vfptr,而vfptr 指向了一张表(简称,虚表)。正是由于虚函数的这个特性,C++的多态才有了发生的可能。其中虚函数表由三部分组成,分别是 RTTI(运行时类型信息)、偏移及虚函数的入口地址。而虚表与类及类生成的对象有存在着以下两种关系:类与虚表的关系:一个类只有一个虚表对象与类的关系:所有对象共享一个虚表...

2020-02-19 23:41:32 2296

原创 C++ | 动多态 | 虚函数表

多态机制C++语言有三大特性:封装、继承、多态。其中所谓的多态,即 “同一接口,不同形态”。接口在我们 C/C++ 语言中可以理解为函数名,不同形态可以理解为函数执行的功能不同。而多态又主要分为静多态和动多态。静多态: 在编译阶段确定函数的调用动多态: 运行阶段确定函数的调用宏多态: 在预编译阶段确定函数的调用而我们今天要讨论的就是动多态。动多态提到动多态就要提到虚函数,其中虚函...

2020-02-19 23:17:29 220

原创 C++ | 动多态的发生时机

探究动多态的发生时机有了虚函数和虚函数表为动多态提供支持,从而可以实现C++语言的动多态。那么,问题又来了。动多态的发生时机是什么?或者说,动多态发生有哪些条件与限制呢?下面让我们一起来探究动多态的秘密,揭示动多态的发生时机。详细步骤:1、虚函数与普通函数的调用2、利用汇编代码分析动多态3、初步探究动多态调用方式4、深入探究动多态发生时机5、总结1、虚函数与普通函数的...

2020-02-19 14:22:42 388

原创 C++ | 虚函数产生条件

虚函数产生的条件1、虚函数机制为动多态提供支持,而虚函数表中存放着虚函数表的地址。因此虚函数必须可以取地址2、虚函数的调用是依靠虚表指针解引用得到虚表,再从虚表中找到对应的虚函数。换言之,虚函数依赖对象调用在C++的类中主要存在以下几种函数:1. 构造函数构造函数不能依赖对象调用。对象产生的步骤主要有二:1、开辟内存空间,2、调用构造。这两部操作完成之后才会有对象生成。因此,不能成为虚...

2020-02-19 13:25:29 439

原创 C++ | 虚表的写入时机

虚表在C++的多态机制中,使用了 virtual 关键字声明的函数称之为虚函数,每个有虚函数的类或者虚继承的子类,编译器都会为它生成一个虚拟函数表(简称:虚表,以下用 vftable表示),表中的每一个元素都指向一个虚函数的地址。我们都知道在C++中对象生成有两个步骤:1、分配内存空间2、调用构造函数多态机制发生在运行阶段,也就是对象生成阶段。那么问题就来了,虚表(编译阶段生成)是什么时......

2020-02-17 15:10:07 2259 9

原创 python学习笔记(二)——程序结构

1. 选择结构:if 语句:单分支、双分支、多分支**单分支结构**if 条件表达式: 语句块**双分支结构**if 条件表达式: 语句块else: 语句块 **多分支结构**if 条件表达式1: 语句块elif 条件表达式2: 语句块elif 条件表达式3: 语句块else: # 可以没有 语句块2. 循环结构:在python 中 for ...

2020-02-14 13:39:21 150

原创 python学习笔记(一)——Python基础

一、python 基础语法python 的解释器在启动时会自动加载一个内建的模块,因此我们在使用 print()、input()等函数时不用导入其他模块文件。基本语法:每条语句结尾没有分号定义变量不需要前置声明变量的类型(动态语言)定义常量不需要特殊关键字,如 PI=3.14,但是PI可改变如PI=5注释,采用 # 进行单行注释,用""“xxx”""或’’‘xxx’’'多行注释基...

2020-02-14 13:35:58 226

原创 Linux ftp服务器部署(最简单的ftp教程)

之前在阿里云领了一个ECS服务器(顺便说一句,白嫖的????,真香~),就想着做点什么,然后试着做个 ftp 站点,因为第一次尝试,结果走了不少弯路。最后终于完成了,研究了两天(哎~,????脑壳笨没办法)就想着记录下来,于是有了这篇博客,按照下面的步骤操作,快速部署好你的 ftp 站点。配置 ftp 站点步骤:1. 安装 vsftpd 服务2. 配置 vsftpd.conf 文件全局配置...

2020-02-12 22:02:13 2213

原创 C++ | 虚函数初探

虚函数虚函数 是在基类中使用关键字 virtual 声明的函数。在派生类中重新定义基类中定义的虚函数时,会告诉编译器不要静态链接到该函数。我们想要的是在程序中任意点可以根据所调用的对象类型来选择调用的函数,这种操作被称为动态链接,或后期绑定。1、普通的继承关系#include <iostream>class Base //定义基类{public: Base(int ...

2020-02-03 20:48:23 1977 2

算子网掩码.exe 计算子网掩码

windows系统下的桌面程序,可用于计算划分子网掩码、通配符掩码检测、十进制IP与点分十进制IP转换等。 使用说明,如计算划分子网掩码: 用户输入一个ip地址,和需要划分的子网个数。程序自动计算出合适的ip地址与子网掩码,并将其显示在输出框上。

2020-11-23

子网掩码计算器.exe

windows系统下的桌面程序,可用于计算划分子网掩码、通配符掩码检测、十进制IP与点分十进制IP转换等。 使用说明,如计算划分子网掩码: 用户输入一个ip地址,和需要划分的子网个数。程序自动计算出合适的ip地址与子网掩码,并将其显示在输出框上。

2020-11-23

SubNetMaskCalc.exe 自动计算ip子网工具

windows系统下的桌面程序,用于计算划分子网掩码。 用户输入一个ip地址,和需要划分的子网个数。程序自动计算出合适的ip地址与子网掩码,并将其显示在输出框上。

2020-11-23

NetMask.exe 自动计算ip子网工具

windows系统下的桌面程序,用于计算划分子网掩码。 用户输入一个ip地址,和需要划分的子网个数。程序自动计算出合适的ip地址与子网掩码,并将其显示在输出框上。

2020-11-23

Aria2 Tools - 支持RPC协议.zip

Aria2 Tools - 支持RPC协议.zip

2020-04-05

Linux基础(内含HTML格式与epub格式).zip

Linux基础(内含HTML格式与epub格式).zip。

2020-04-05

超全汇编速查手册.chm

超全汇编速查手册.chm。

2020-04-05

Windows 中的键盘快捷方式 - Windows Help.html

Windows 中的键盘快捷方式 。

2020-04-05

应用中的键盘快捷方式 - Windows Help.html

windows常用应用中的快捷键。

2020-04-05

用于辅助功能的 Windows 键盘快捷方式 - Windows Help.html

windows上的快捷键官方文档。

2020-04-05

贪吃蛇实践报告.doc

贪吃蛇实验报告。学期期末设计实验报告,此实验报告于我博客贪吃蛇2.0中代码配套。内容仅供参考

2019-11-18

计算机基础知识试题及答案.doc

计算机基础知识试题及答案.doc

2019-11-18

EasyX_Help.chm

EasyX 是针对 C++ 的图形库,可以帮助 C 语言初学者快速上手图形和游戏编程。Easyx帮助手册可以帮助开发人员更好的使用Easyx进行图形化编程。

2019-10-06

IndentGuide v14+v15

内含IndentGuide v14和IndentGuide v15两款插件,作用可使代码块大括号之间生成一条虚线。

2019-04-25

vld内存泄漏测试工具

VLD(Visual Leak Detector)是一款用于 Visual C++ 的内存泄露检测工具。

2019-04-25

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

TA关注的人

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