自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Royi的学习博客

欢迎来到我的学习小窝

  • 博客(116)
  • 收藏
  • 关注

原创 简洁直白的github快速入门教程(云主机)

如果你不是云主机,也可以使用本地的linux,这里不提供windows的解决方案!

2024-09-04 16:39:29 1070

原创 C++20: 概念 concept

Concepts(概念)是 C++20 引入的一项重要特性,用于对模板参数进行约束和检查。通过使用 Concepts,开发者可以在编译期对模板参数的类型和行为进行验证,从而提高代码的可读性、可维护性和错误信息的清晰度。Concepts 为 C++ 模板编程带来了强大的类型约束机制,使得模板代码更加健壮、可读和易于维护。通过在编译期进行类型检查,Concepts 帮助开发者更早地发现错误,并提供更直观的错误信息。C++20 提供了一些预定义的 Concepts,如。编译器会给出清晰的错误信息,指出。

2024-08-24 16:04:59 594

原创 Linux系统编程:sendmsg与recvmsg的使用方法

在 Unix 网络编程中,msghdr、iovec 和 cmsghdr 是三个关键的结构体,它们用于在系统调用 sendmsg 和 recvmsg 中处理复杂的消息传递,特别是涉及到多缓冲区数据和控制信息(例如,文件描述符的传递)。在学习sendmsg 和 recvmsg之前,我们先来看一下这三个结构体的结构:我们先来看一下他的英文含义,便于我们记忆:: Message Header下面是他本身的结构:作用 和 : 用于指定消息的目的地址,主要在发送时使用。在 Unix 域套接字中,这两个字段通常为

2024-08-14 18:08:45 803

原创 C++:奇异递归模板模式(CRTP模式)

在 C++ 中,如果一个类是空的(即没有非静态成员变量,没有虚函数,没有虚基类),它通常不会占用任何内存空间。当一个派生类继承一个空基类时,编译器可以将这个基类的存储空间与派生类的其他成员共享,从而减少内存占用。通过 CRTP,可以在编译时实现多态行为,而不是依赖于运行时多态(如虚函数表)。如果派生类未实现这些方法,将在编译时产生错误。是一个空基类,按照一般规则,空类通常会占用 1 字节的空间来保证不同对象具有唯一的地址。对象大小仅为 4 字节,即 int 的大小,而没有额外增加由于基类而带来的存储开销。

2024-08-09 15:00:27 409

原创 vscode ssh-remote 疑似内存泄漏问题

版本:1.88.1(通用)日期:2024-04-10T17:42:52.765Z操作系统:Darwin x64 23.4.0。

2024-08-08 17:49:15 1030

原创 后端C++: 主从反应堆 Unix Domain Sockets (UDS) 通讯方式示例

这种方式是主从反应堆中,主反应堆和从反应堆两个进程通信方式的一种。这种方式是一种在 Unix / Linux 操作系统上用于进程间通讯的机制。与传统的网络套接字(TCP/IP Sockets)不同,UDS 在同一台机器上进行通讯,,因此具有更高的性能和更低的延迟。

2024-08-07 16:08:22 402

原创 C++迈向精通:STL-iterator_traits迭代器类型萃取解析

这样做的好处:在C++中有两种迭代器类型,一种是迭代器对象,一种是C语言形式的指针,通过迭代器萃取,我们可以统一迭代器的类型使用方式。解析的详细内容,欢迎评论区提问或者指正。可以发现,当我们调用C++中的。

2024-07-26 15:32:50 321

原创 C++迈向精通:STL设计机制之运算检查(含部分源码解析)

sort函数在排序之前会先进行一个检查,那就是是否支持小于运算符:源码是这样写的:这行代码的会对类型进行检查,看看类型是否支持小于运算,如果不支持,LSP会直接检查并且报错。其实,进行运算符号的支持判断并不难,我们只需要写一段对应的代码即可,但是STL中的源码就很神奇,他做到了不消耗系统资源而达到代码检查的目的。先来看看这是一个什么东西:根据编程规范,这个东西大概率是一个宏(因为他全是大写),我们跳转到源码看一看:一看,果然是一个宏,这个代码使用一个do{ }while。

2024-07-19 18:09:28 1061 1

原创 C++写一个线程池

这次换成C++了!由于C++支持泛型编程,所以代码的灵活性提高了不知道多少倍!!!!!

2024-07-18 19:56:56 1663 2

原创 C++迈向精通:模板中的引用与remove_reference原理

在模板中,双 '‘ 会被解析为“引用”,这个“引用”可以是“左值”引用,也可以是“右值”引用。我们查看一下编译器是如何分析类型的:执行:可以得到如下结果:func(a)对应的是对应的是可以发现:左值a被解析为int &;右值123被解析为int &&。因此,可以发现:在模板函数(参数为双&&)中,所有模板参数都会被转换为引用这不禁让人产生疑惑,我的模板参数明确填写了为双为什么还能被转换为 单 ‘&’ 呢?

2024-07-16 22:25:46 293

原创 C++迈向精通:再看C数组与指针

讲解了C/C++中指针的相关细节和编译器的解析方式

2024-07-15 20:46:02 394

原创 C++迈向精通:理解函数声明,编译器是如何看懂声明的?

详细讲解了C/C++中的声明的方式与解析原理,帮助你彻底理解C/C++中的语法陷阱和声明格式

2024-07-10 23:10:44 819

原创 C++迈向精通:函数指针对象与函数对象

介绍了C++中的函数对象与函数指针对象

2024-06-19 13:30:44 329

原创 C++迈向精通:当我尝试修改虚函数表

本文介绍了一种虚函数表的查看与替换方式

2024-06-13 17:04:43 577 2

原创 C++迈向精通:STL的Deque复现

讲解了C++的STL中deque的实现方式。

2024-06-09 23:02:05 1113

原创 C++迈向精通:vector复现与sort复现

C++迈向精通:vector复现与sort复现

2024-05-28 22:34:25 454 1

原创 Linux服务器开发:C/S文件传输,整包,拆包,粘包问题

详细介绍了服务器开发中文件传输遇到的粘包问题以及给出了解决代码。

2024-05-03 20:31:16 1246 1

原创 C语言写一个终端进度条

教你如何使用C语言写一个终端上的进度条

2024-05-03 16:10:11 520

原创 C语言写一个线程池(原理 + 代码)

使用C语言实现一个线程池,包括详细的代码以及原理介绍

2024-04-27 18:34:17 897

原创 C系统编程:一篇文章带你彻底搞懂IO多路复用以及select函数

介绍了C系统编程中select函数的用法以及IO多路复用的相关内容。

2024-04-27 16:54:05 1018

原创 C系统编程:从零手搓一个shell

用C语言写一个shell

2024-04-24 22:19:36 1478

原创 C/C++:实现一个柱状统计图

简单的实现了一个柱状统计图

2024-04-12 19:38:15 493

原创 C:标准日志函数

尝试写了一个C++标准日志函数

2024-04-05 14:57:42 433

原创 5分钟学会:超级简单的日志函数 【C语言】

一个简单的日志函数

2024-03-29 21:29:31 253

原创 C++迈向精通,学习笔记:const方法

C++有关const的方法学习

2024-03-27 18:20:29 234

原创 C++迈向精通:学习笔记:类属性与类方法

C++的类属性与类方法

2024-03-27 18:16:43 247

原创 C++迈向精通,学习笔记:类与对象

C++学习笔记

2024-03-22 21:52:13 677

原创 Linux/Uinx 系统编程:定时器以及时钟同步

讲解了系统编程中定时器与时钟同步的方式

2024-03-21 20:03:10 911

原创 C后端开发,记录一个关于条件变量的死锁bug

C语言后端开发遇到的问题,一步一步解决。

2024-03-13 22:03:31 669

原创 算法竞赛例题讲解:[蓝桥杯 2023 国 B] 班级活动

算法竞赛蓝桥杯例题讲解

2024-03-11 19:24:38 1138

原创 Project_Euler-10 题解

欧拉计划第10题题解

2024-03-11 17:56:05 352

原创 算法竞赛基础:树状数组

介绍了树状数组的结构和模板代码,以及给出了一个模板例题

2024-03-06 21:14:49 417

原创 算法竞赛STL:map的使用方法

介绍了STL中map的使用方法

2024-03-04 21:33:51 591

原创 Project_Euler-12 题解

欧拉计划12题题解及优化思路

2024-03-04 13:00:00 910

原创 Project_Euler-25 题解

欧拉计划25题题解

2024-03-04 10:00:00 349

原创 Project_Euler-45 题解

欧拉计划45题题解

2024-03-03 06:15:00 381

原创 Project_Euler-44 题解

欧拉计划44题题解

2024-03-02 06:00:00 1000

原创 Project_Euler-42 题解

欧拉计划42题题解

2024-03-01 05:45:00 789

原创 Project_Euler-32 题解

欧拉计划32题题解

2024-02-29 15:00:00 373 1

原创 Project_Euler-29 题解

欧拉计划29题题解

2024-02-29 12:12:49 372

空空如也

空空如也

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

TA关注的人

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