自定义博客皮肤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领域创作

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

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

原创 shell 脚本练习 | 「题霸」面试必考真题【shell篇】题解

简单题1. 统计文件的行数方法一:使用wc命令,统计行数参考资料《wc - 统计文件的字节数、字数、行数》直接使用 wc -l ./nowcoder.txt 会输出“总行号 文件名”,我们可以使用以下方法来完成此题。统计cat命令输出的内容中的行号cat ./nowcoder.txt | wc -l使用awk工具,只输出第一列wc -l ./nowcoder.txt | awk '{print $1}'方法二:使用awk工具,处理文本参考资料《awk - 文本和数据进行

2021-02-26 21:15:15 3051

原创 Windows 终端 | Windows Terminal | 一款强大且高效的终端应用程序

Windows终端程序是一款新式、快速、高效、强大且高效的终端应用程序,适用于命令行工具和命令提示符,PowerShell和 WSL等Shell用户。主要功能包括多个选项卡、窗格、Unicode、和UTF-8字符支持,GPU 加速文本渲染引擎以及自定义主题、样式和配置。

2021-02-24 18:26:05 13031 1

原创 [转载] shell中的各种括号的使用方法 | shell中各种括号的作用详解()、(())、[]、[[]]、{}

shell中的各种括号的使用方法: https://www.jb51.net/article/60326.htmshell中各种括号的作用详解()、(())、[]、[[]]、{}(推荐): https://www.jb51.net/article/123081.htm

2021-02-23 13:41:40 72

原创 1004. 最大连续1的个数 III

给定一个由若干 0 和 1 组成的数组 A,我们最多可以将 K 个值从 0 变成 1 。返回仅包含 1 的最长(连续)子数组的长度。示例 1:输入:A = [1,1,1,0,0,0,1,1,1,1,0], K = 2输出:6解释:[1,1,1,0,0,1,1,1,1,1,1]粗体数字从 0 翻转到 1,最长的子数组长度为 6。示例 2:输入:A = [0,0,1,1,0,0,1,1,1,0,1,1,0,0,0,1,1,1,1], K = 3输出:10解释:[0,0,1,1,1,

2021-02-19 20:33:03 244

原创 STL算法 | 查找函数 find()、二分查找binary_search/upper_bound、子序列查找search

文章目录一、find系列函数(单个元素顺序查找)1. find 搜索等于 value 的元素。2. find_if 搜索谓词 p 对其返回 true 的元素3. find_if_not 搜索谓词 q 对其返回 false 的元素。测试用例一、二分查找系列函数(单个元素二分查找)1. lower_bound 二分查找大于等于2. upper_bound 二分查找大于3. equal_range 二分查找等价区间4. binary_search 二分查找是否存在元素value测试用例三、子序列查找 search

2021-02-19 17:56:32 1749 2

原创 STL算法 | std::max的使用方法总结,std::min 的使用方法与之相同。

(以下以std::max函数为例讲解)std::max 定义于头文件 <algorithm>,该函数函数原型有主要有以下两个:两个数之间比较大小constexpr const T& max( const T& a, const T& b );constexpr const T& max( const T& a, const T& b, Compare comp );含有谓词的版本列表之间比较大小constexpr T max

2021-02-16 00:21:02 21393

原创 分析new 与 malloc的不同,以及如何使用free()、delete、delete[]释放资源。

free可以对new的空间进行释放吗?delete可以释放new出的数组空间吗?什么情况下可以使用free或delete释放,却不能使用delete[]释放?什么情况下可以free、delete、delete[] 三种方法都可以释放?

2021-02-15 19:54:33 698 2

原创 关于虚表指针与构造函数、析构函数

class Base{public: Base() {fun(); } ~Base() {fun(); } virtual void fun() { cout << "Base::fun()" << endl; }};class Derive :public Base{public: Derive() { fun(); } ~Derive() { fun(); } virtual void fun() override { cout << "Der

2021-02-15 15:09:58 327

原创 vs 添加快捷键 | 修改快捷键、添加注释、添加快速插入代码(使用#if 0 注释)

文章目录添加注释工具快捷键自定义命令快捷键添加注释工具图标添加插入代码工具图标为什么使用#if 0注释添加插入外侧代码工具使用快捷工具进行 #if 0 注释添加注释工具快捷键在C/C++中提供了两种注释方式,行注释// 与 块注释 /* .. */ ,而这两种注释方式在VS编译器中对应的快捷键 ctrl + k+ctrl + c 注释代码、ctrl + k+ctrl + u 取消代码注释。如果我们嫌这样的快捷键不太方便的话,我们也可以将对应命令自定义修改为熟悉的按键规则。自定义命令快捷键打开【工具

2021-02-15 01:00:51 4544

原创 VS 自动添加代码 | 使用snippet插入外部代码

效果演示:说明:输入 sh ,按下Tab键,即可快速生成 show()函数。详细步骤如下:(下面使用VS 2019界面演示)文章目录一、代码片段管理二、编写snippet文件唤醒词与变量代码部分三、添加snippet文件到工作目录四、其他代码片段示例代码Visudal C++提供的snippet文件参考自定义的snippet文件参考注释代码使用std::copy() 实现的输出函数查看已添加的自动代码一、代码片段管理1.【工具】——》【代码片段管理器】2.选择【Visual C++】3

2021-02-14 22:14:43 1540

原创 enable_shared_from_this使用场景, 异步调用中保活机制

参考博客:C++11新特性之十:enable_shared_from_thisenable_shared_from_this的用处文章目录1. shared_ptr初始化规则:同一空间不能初始化多个智能指针,共享型智能指针共享的前提是通过已有的指针指针初始化新的智能指针。2. 如果我们想在类中对外返回一个自身的智能指针该如何做到呢?3. 引入shared_from_this()类,更安全的生成额外的shared_ptr 实例4. 从类中返回一个自身的shared_ptr指针又什么意义?或者说为此

2021-02-14 15:52:35 1597

原创 适配器模式

#include <iostream>#include <Windows.h>#include <vector>#include <string>#include <algorithm>using namespace std;#if 0/* 场景:公司职员,她朋友是高手。 如果某项工作不能完成,会找她朋友帮忙 现在设计适配器类,间接调用她朋友*/

2021-02-14 15:47:08 60

原创 行为模式——观察者模式

行为型模式: 关注系统中对象之间的相互交互,研究运行时对象之间的相互通信和协作,明确对象职。观察者模式建立对象间的一对多关系,使一个对象变化被所有关联对象感知。角色抽象主题(Subject):它把所有观察者对象的引用保存到一个聚集里,每个主题都可以有任何数量的观察者。抽象主题提供一个接口,可以增加和删除观察者对象。具体主题(Concrete Subject):将有关状态存入具体观察者对象;在具体主题内部状态改变时,给所有登记过的观察者发出通知。抽象观察者(Observer):为所有的具体

2021-02-08 19:31:01 71

原创 关于 shared_ptr 创建不可删除对象(私有析构函数)的指针时,只能调用移动函数 | C2664...(std::shared_ptr<A> &&)...“std::nullptr_t”

正常情况下,基类指针指向派生类对象时,使用智能指针。class A{public: virtual ~A() { std::cout << "destructed: ~A() " << std::endl; }};class B :public A{public: ~B() { std::cout << "destructed: ~B() " << std::endl; }};int main(){ std::unique_ptr&

2021-02-08 17:35:17 295

原创 单例模式多种实现方式

饿汉模式:1。返回静态对象(唯一对象)地址class Singleton{public: static Singleton* GetInstance() { return &instance; } ~Singleton() {}private: Singleton() {} Singleton(const Singleton& src) = delete; Singleton& operator=(const Singleton&) = delet

2021-02-08 13:11:48 77

原创 工厂模式实现

类中存在纯虚函数,为抽象类,不能实例化。类中的静态方法可以通过对象或类名调用。如果,我们将抽象类,或者普通类的构造函数设置为保护态,那么就相当于无法通过外部的行为构造对象,只能通过不依赖this的静态方法调用(静态方法调用构造函数)。工厂模式: 当我们需要什么,只需要传入正确的参数,就可以得到对应的对象。我们无需知道其创建细节。简单工厂模式又叫静态方法模式(因为工厂类定义了一个静态方法)模式组成组成(角色)关系作用抽象产品(Product)具体产品的父类描述产品的公共

2021-02-06 22:48:53 168

原创 C++纯虚函数 | 接口 | 模板特例化 | 智能指针的意义

虚析构:如果main中使用 父类 = new 子类 的方式,需要把父类的析构函数设置为虚析构。纯虚函数:函数定义后有 = 0 的函数,有纯虚函数的类为抽象类。注:如果子类继承抽象类,不实现纯虚方法,子类任然为抽象类。(c语言中,void为抽象类,不能定义对象,可以定义指针或其他类型的引用)。纯虚函数与虚函数接口:方法的集合。所有方法都是纯虚函数。抽象类可以继承接口类,不必实现所有的接口,因为此抽象类无需实例化。(注:抽象类一般把构造方法设置为保护状态,禁止实例化,同时子类可传递参数初始化成员变量

2021-02-06 00:22:02 364

转载 STL容器

基础篇:STL容器和算法基础篇:STL容器和算法Fei DingCS PhD在读​关注他3 人赞同了该文章目录:1. 什么是STL?2. Sequence containers3. Associative containers4. tuple5. 容器配接器6. 算法7. 总结以下个人总结,如有侵权,请联系删除,如有错误,欢迎大家指正,谢谢!1. 什么是STL?1) STL(Standard Template Library),即标准模板库,是一个高效的C++程序库,包含了诸多常用的基本数据结构和基...

2021-02-03 17:43:13 268

原创 C/C++常用头文件及函数汇总【转】

C/C++头文件一览C#include <assert.h>    //设定插入点#include <ctype.h>     //字符处理#include <errno.h>     //定义错误码#include <float.h>     //浮点数处理#include <iso646.h> //对应各种运算符的宏#include <limits.h>    //定义各种数据类型最值的常量#inclu

2021-02-03 17:39:15 1367

原创 C++ | 左值引用 与 右值引用

(参看自博客:【译】VC10中的C++0x特性 part 1:Lambdas,auto,以及 static_assert)用 & 声明的引用类型被称作 lvalue 引用,而用 && 声明的引用类型被称作 rvalue 引用。(“lvalue ”,即“Left value” 左值; “rvalue ”,即“Right value” 右值。)两条规则:遵守 const 正确性,所以不能把非常量引用绑定到常量上。避免意外修改临时对象,所以不能把非常量 lvalue 引用绑定到

2021-02-01 13:17:16 103

原创 智能指针——unique_ptr、shared_ptr、weak_ptr、make_shared()

智能指针删除器,利用类模板特例化C++11 unique_ptr智能指针详解1.独占性,唯一性智能指针 unique_ptr多对象使用// 单个对象auto_ptr<Obj> pa(new Obj(10));// 多个对象unique_ptr<Obj[]> up_obji(new Obj[3]);// 模板参数列表传入,删除器(函数对象,即仿函数)unique_ptr<Obj, default_delete<Obj[]>> up_obja(

2021-02-01 12:57:10 189

算子网掩码.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关注的人

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