- 博客(36)
- 收藏
- 关注
原创 我的C++规范 - 跳跃的对象
面向对象中,可以将代码实现往逻辑设计上靠拢,他们希望将各种复杂的功能都符合逻辑,符合设计,他们习惯将各种功能都抽出成为接口,接口是被规定的,而且不可更改的,一个好的接口设计可以让一切都合乎情理,接口可以统一代码,可以忽视他们在具体功能上的差异,将他们统一到一种类似流水线的逻辑当中,让他们在这一条线上总是保持着一致的运行规律。
2026-01-15 14:55:40
19
原创 我的C++规范 - 今天是星期几
这个字符串被 R"()" 给包裹起来,这种写法叫 R表达式 ,你要是注意看打印结果就会发现,这段字符串的打印是有换行的,但是代码没有出现 \n 等换行符,这是因为R表达式会以肉眼可见的方式转化为字符串,更符合人的文本编写,R表达式适合进行大量多行复杂本文的编辑,因为它是所见既所得的,且不需要处理转义字符。在编程中大部分时间都是在处理各种各样的数据,他们可能是简单的或者是复杂的一堆数据,我们需要的就是要处理这一堆堆的数据,那首先第一步就是要创建自己的一堆数据,以及如何使用他们。
2026-01-15 14:54:06
63
原创 我的C++规范 - 玩一个小游戏
但是你会发现,在上面的最速公式游戏 main.cpp 代码上,我使用了两处的 switch 指令,这是为什么呢,当分支类型使用整数,且类型一致,且可能存在很多分支,且分支内代码简单少量,且代码高度一致时,我才会考虑使用 switch 指令来代替 if,很显然这个代替的条件很苛刻。作用域还是一个变量范围的问题,内层作用域是可以直接使用外层作用域的变量的,因为内层作用域本身也是外层作用域的内部,但外层不可以使用内层的变量,同层也不行,因为变量是被限制在作用域之内的,所有内层可以使用外层变量,这一点请注意。
2026-01-13 16:06:25
587
原创 我的C++规范 - 拒绝重复代码
/ short 类型i++)byte >>= 1;return ret;// int 类型i++)byte >>= 1;return ret;
2026-01-13 16:02:09
465
原创 我的C++规范 - 你的第二个函数
/ 函数解析// std::string 是函数返回值// print_byte_int32 是函数名称// int byte 函数参数,int 是类型,byte 是名称// 函数作用域开始// 函数作用域结束在C++中,函数是十分常见的,从 main 函数开始,我们就已经接触了第一个函数,函数是无处不见的,函数也十分关键,我们需要创建一个自己的函数函数由函数名,参数,返回值构成,我们调用时需要使用函数名和传入参数是必须的,返回值是选择性接收的。
2026-01-11 13:26:45
572
原创 我的C++规范 - 计算压岁钱
今天来讲一讲如何使用代码计算,上面的代码简单的样式了数学中加减乘除的用法,用于计算一些问题,上面的代码的每一处计算都是有实际需求的,这个系列的文章并不会列举出所有的计算符号与功能,只会举例子对功能进行说明,如果你需要更详细的资料请自行使用AI查询。C++中需要运行计算代码,离不开变量,变量是一种存储数据的容器,这种数据可以是任何东西,如数字/字符/地址等等,需要将他们存入变量,然后使用运算符进行计算,计算的结果依旧在变量中,因为结果也需要使用变量来存储。
2026-01-11 13:24:17
878
原创 我的C++规范 - 请移动到头文件
相信你已经看到了头文件内不仅仅是将 MCLOG 复制到 mclog.h 文件中,文件内还存在着另三个 MCLOG_H 宏将 MCLOG 的内容包裹住,这个 MCLOG_H 是保护宏,它的功能就是将头文件的内容进行保护,让同一个 .cpp 文件只能导入一次头文件,如果重复导入 mclog.h 则直接退出,因为重复导入会引起重命名问题,导致程序编译失败。这个宏是不规范的,它没有使用字母,并不遵循一般的命名规则,但确可以简单高效的打印出变量名与对应内容,这是我使用它的原因,我也推荐你去使用。
2026-01-09 10:57:06
428
原创 我的C++规范 - 第一个标准程序
宏定义(macro)是新手不好理解且不推荐随意使用的,但在这里第一个程序就使用了,因为我们需要打印日志打印日志非常中重要,通常日志需要附带日期时间/文件位置/代码函数等信息,在打印中附带日志信息可以帮助开发者调试程序日志信息打印是编程规范的重要一步但是手动编写复杂重复的日志信息又十分烦人,所以可以借助宏来完成这一步,先说宏定义的功能,它只是简单的复制你为他制定的内容,它需要你指定一个别名和原本代码,然后它会在编译时在别名位置替换为原本代码。
2026-01-09 10:55:05
316
原创 我的C++规范 - 准备编译环境
如果你还没有意识到C++有多麻烦,这一篇会让你认识到这一点,如果你无法完整这一篇的教学内容,那你现在推出还没有任何损失C++需要开发者从零构建和管理自己的项目,如果你是新手,那就请在我的指引下,配合AI来搭建并运行你的第一个C++程序。
2026-01-07 16:20:41
811
原创 我的C++规范 - 前言
如果你是一个编程新手,从来没有学过任何编程的,经过一系列思考之后在众多的编程语言中选择了C++语言,那么恭喜你,你选择了一个又古老又复杂又落后又麻烦的编程语言C++是一门古老的编程语言,在历史长河中能存活下只有一个最关键的优势,性能性能性能,除此之外对比现代编程语言没有任何优势,如果你决定以C++作为入门语言,那将是地狱开局。
2026-01-07 16:14:52
823
原创 C++工具:C++日志模板--提供调试日志和文件日志
提供C++简单日志,分别为控制台调试日志、文件日志。调试日志有自定义等级划分,不同等级的颜色显示。文件日志提供单文件无限写入与多文件循环写入,支持控制文件数量与最大文件字节
2023-06-28 15:45:06
757
原创 C++容器:管道容器[stack - queue]
讲解C++ STL管道容器的简单使用,分别包括stack、queue、deque三个容器,使用生产者、消费者模型,重点解析queue容器在多线程下的数据同步操作
2023-05-26 20:59:09
255
原创 C++工具:C语言链表实现C++STL接口--支持泛型宏
C语言用面向对象思想实现C++STL泛型链表,支持类面向对象、支持泛型、支持自定义分配器
2023-05-12 15:08:58
301
原创 C++工具:仿C++STL接口的C风格链表--支持函数泛型
提供纯C风格的带头结点链表,操作接口类似C++STL容器,提供泛型宏接口,统一各类型操作,提供链表的详细操作步骤
2023-05-07 11:33:17
162
原创 C++网络:TCP点对点通信-附带文件传输代码实例
本章介绍C++中TCP协议的使用以及点对点设计方案,提供了文件发送与文件传输的简单协议实现参考,提供string字符串的发送协议
2023-04-07 11:07:43
1194
原创 C++网络:IO复用epoll服务器-附带网络聊天室代码实例
使用epoll实现IO复用服务器,解析epoll的用法,并编写以epoll为基础的网络聊天室,其中附带上一份可用的轻量级服务器与客户端代码
2023-04-03 13:43:17
638
原创 C++代码详解:string的赋值与C风格字符串转换
记录了string与C风格代码的相互转换,string与结构体的转换,string与数字的相互转换,用于将string格式化为负责字符串的方法
2023-03-30 17:05:22
915
原创 C++容器:线性容器[vector - array]
对比C++容器中vector、array与C风格等线性容器的特点,重点测试vector容器的特点与常见操作
2023-03-22 19:58:53
284
原创 C++设计模式:职责链-代码实例以及其他代替方案
本篇文章实现了职责链的设计代码以及可用的代替方法,其中包括了一个可行的模板化职责链的特殊实现样板
2023-03-16 16:41:13
184
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1