- 博客(666)
- 资源 (51)
- 收藏
- 关注

原创 新手如何学好C语言?
作为一名资深码农,在软件行业也拼搏了十多年,这里跟想学习C语言的萌新童鞋分享下我的个人学习心得!!!在大学时代,我们大二才开始学习C语言(起步有点晚啊),第一次看到那本黄黄的谭浩强老师的《c语言教程》,哈哈哈,就是这本了,满满的回忆啊!开学拿到这本书后,心情很激动,因为以前总是羡慕那种黑客,好像很牛的样子, 抱着好奇的心理随便翻开了几页看了看,全程一脸懵逼, 因为以前从来没有接触过编程...
2020-04-27 13:59:47
2646
3

原创 一个普通的计算机专业专科生,毕业后想拿高薪,大学三年具体应该怎么做?
最近有一位大一的童鞋问我:黄老师, 我现在是一个普通院校的专科,学历含金量并不高,随大流选了一个计算机专业,很迷茫,不知道毕业后能干嘛,但我还是不想虚度大学三年,因为家境并不好,想通过自己努努力毕业能拿一份不错的薪水,能给点建议吗?其实也不是这一位同学向我咨询类似的问题,这几年其实蛮多的普通院校大学生都感到压力,因为没有名校背景,没有较高的学历,大学毕业后,只能进入普...
2020-04-24 16:45:34
4725

原创 全套C C++ 编程视频课程收录
【C语言】小白可以短时间很快入门的《从小白入门C语言视频课程》http://edu.csdn.net/course/detail/5895然后C语言中为核心知识点,附上指《C语言指针精讲视频课程》http://edu.csdn.net/course/detail/5896指针是重点《30分钟学会C语言指针视频课程》https://edu.csdn.net/cou...
2017-10-27 14:58:48
11322

原创 新手如何学好C++?
最近,很多学员都给我发邮件问我应该如何学习C++,如何学好C++?那么作为一个从C语言小白摸爬滚打、入坑无数到成长为如今的高级C++游戏开发工程师、高级C++服务端工程师、项目经理、技术总监、我想跟大家分享下我自己的学习心得与体会!Linus曾说过:“C++是一门很恐怖的语言,而比它更恐怖的是很多不合格的程序员在使用着它”,这个世界上最难的编程语言可能非C++莫属了,呵呵,虽然有点夸...
2017-10-10 09:32:28
22039
6
原创 从 Linux 将文件下载到 Windows 的几种实用方法
方法是否推荐说明scp✅ 强烈推荐快速、安全、无需图形界面rsync✅ 推荐(高级)适合大量文件同步sftp✅ 推荐交互式下载,适合调试HTTP 服务✅ 推荐(临时)适合无权限拷贝时WinSCP✅ 推荐图形化操作,适合新手。
2025-07-23 17:21:39
13
原创 Windows 用 Python3 快速搭建 HTTP 服务器
在日常开发或运维中,我们经常需要临时共享文件,比如将 Windows 上的文件快速共享给 Linux 主机。本文将介绍一种的方式,使用,在 Windows 上快速搭建一个本地 HTTP 服务器,并从 Linux 主机使用wget下载文件。
2025-07-23 17:07:15
32
原创 VS Code 中终端打印日志不全解决方法
把这个改为 100000 , 注意,几类配置都改一下!搜索 关键词 scrollback。打开VS Code 的Settings。
2025-07-22 20:27:57
133
原创 Boost.Asio 中的 acceptor
方法说明打开指定协议的 acceptor绑定到指定端口开始监听连接, backlog 最大未完成连接数同步接受连接异步接受连接设置 socket 选项(如 reuse_address)关闭 acceptor。
2025-07-22 10:13:28
23
原创 boost::asio 中 io_service与线程的关系
io_service模型描述优点缺点适用场景单线程io_service所有任务在一个线程中串行执行简单、安全无法利用多核调试、小型服务多线程io_service多个线程共享一个io_service并发处理能力强需要线程安全机制中小型并发服务多个io_service+ 多线程每个线程绑定一个io_service资源隔离、扩展性强管理复杂大型服务器、模块化设计。
2025-07-21 23:48:15
229
原创 Windows 下 VS2019 编译 libevent-2.1.10 库
1. 你需要VS2019 编译好openssl-1.1.1 ,这个具体编译或者下载可以参考我的博客。接下来,打开CMake ,主要是下面的需要设置好。最后Config Generate即可;然后INSTALL右键生成。最后生成的库是这两个文件。全部成功生成 22个。
2025-07-18 17:45:42
27
原创 boost::asio::deadline_timer定时器详解
同步等待:阻塞当前线程直到指定时间点。异步等待:注册回调函数,在指定时间点被调用,不阻塞主线程。其底层实现依赖于操作系统的时间服务,可以在 Windows 上使用,在 Linux 上使用timerfd或其他机制。特性时间单位推荐程度老版本可用新项目推荐是否支持异步✅✅是否可重复使用✅✅。
2025-07-14 19:20:51
38
原创 VS2019编译使用log4cplus 1.2.0
logger.properties 文件。第三步,创建项目来测试,配置库。第二步,使用VS2019编译。
2025-07-14 16:58:14
276
原创 C++ 中的 std::bind 用法
在现代 C++ 编程中,std::bind是一个非常强大但常常被误解的工具。它允许我们将函数(包括成员函数)、参数进行绑定,并生成一个。这在编写异步回调、事件处理、适配器模式等场景中非常有用。
2025-07-14 11:21:50
226
原创 Boost.Asio 中 io_context 类 post 和 dispatch的区别
特性postdispatch是否可能同步执行否可能调用者是否阻塞不会不会是否立即执行否有可能是否绕过队列否有可能是否适合频繁调用✅❌(需注意死锁)
2025-07-13 16:19:02
33
原创 C/C++ 常用文件后缀.c 、 .h 、 .cpp 、 .hpp 、 .ipp 、 .cc 、 .cxx详解
含义用途:指定 DLL 导出的符号;仅限 Windows 平台;示例;EXPORTSMyFunction后缀语言类型常见用途是否必须.cC源文件C语言实现✅ 是.hC/C++头文件声明、宏、结构体等✅ 是.cpp.cc.cxxC++源文件C++实现✅ 是.hppC++头文件C++声明、类定义✅ 是.ippC++实现文件模板实现❌ 否.inlC++实现文件内联函数实现❌ 否.txxC++实现文件模板实现(Boost)❌ 否.defC/C++定义文件。
2025-07-13 14:17:38
60
原创 深入理解 Boost.Asio 中的异步核心 boost::asio::io_context
io_contextio_context是 Boost.Asio 中用于管理 I/O 执行上下文的核心类,它负责调度和执行异步操作。你可以把它看作是异步任务的“调度中心”或“运行引擎”。所有的异步操作(如网络请求、定时器、异步读写等)都需要通过一个io_context实例来驱动。场景建议单线程异步程序创建一个io_context并调用run()多线程并发处理多个线程调用同一个避免过早退出使用保持工作状态分离 IO 与业务逻辑使用post()或dispatch()将任务投递回主线程。
2025-07-12 18:56:05
52
原创 C++中Lambda表达式 [ ] 的写法
Lambda表达式的声明以方括号[ ]开始,这部分被称为捕获列表(capture list),用于指定如何从Lambda表达式外部捕获变量到其内部作用域。
2025-07-12 14:40:40
142
原创 Boost.Asio 中的定时器类 steady_timer
Boost.Asio库提供了强大的工具来处理异步I/O操作,包括网络通信、文件系统访问以及定时器等。 是一个基于C++11标准库中的库实现的定时器,它提供了一个稳定的时钟源,不受系统时间变化的影响(例如手动调整系统时间)。这意味着它可以用于需要高精度计时的任务,如心跳检测、超时管理等。https://www.boost.org/doc/libs/latest/doc/html/boost_asio/reference/steady_timer.html非常适合那些需要执行延迟操作或定期任务的应用程序。例如:
2025-07-12 14:15:49
134
原创 新手零基础学Boost库
那就看我的Boost专栏吧,我会将官方知识点 更贴近小白的 写出来,希望你们能学的轻松一些!C++ Boost是一个比较大且牛批的库,我们怎么来学习Boost库呢?怎么,还是不知道怎么学?
2025-07-12 14:03:36
24
原创 C++ Boost 自动链接机制详解
自动链接是 Boost 在 Windows 平台下(尤其是使用 Visual Studio 编译器时)提供的一种链接机制。它通过预处理器宏和编译器指令,让编译器自动选择需要链接的 Boost 库,从而省去手动添加.lib。例如,当你使用时,不需要手动告诉链接器要链接这样的文件,Boost 会根据你的编译环境自动完成这个任务。官方介绍 automatic_library_selection。
2025-07-12 12:20:40
32
原创 VS2017 编译 Boost 1.83.0 库
VS2015的 ToolSet是vc140 , VS2017为vc141 ,VS2019 为 vc142 ,VS2022 为 vc143。boost::filesystem 需要使用静态库或动态库、我们指定下库目录即可,无需具体指定哪个库(Boost 提供了“然后就成功了,竟然这么简单,在stage目录下就可以找到静态库。在vs2017中设置如下选项。
2025-07-12 10:59:09
26
原创 Ubuntu 24.04上安装 Intelligent Pinyin 中文输入法
在ubuntu上安装搜狗中文输入法之后用不了,于是换个 中文智能拼音输入法 Chinese( Intelligent Pinyin )
2025-07-11 23:53:50
374
原创 零基础Qt 5 安装教程
1.首先给你们Qt 5.14.2 的安装地址, 安装包大小为2.28G。我这里只勾选了需要的部分,如果你不确定需要用到哪些,建议全选。
2025-07-08 22:59:39
60
原创 零基础 Qt 6 在线安装教程
1.首先给你们Qt 5.14.2 的安装地址, 有需要的可以安装。我这里选择自定义安装,当然我这里勾选了很少一部分,2.首先下载 Qt 6的在线安装包。
2025-07-08 22:42:48
91
原创 C++ 轻量级cpp-httplib库详解
单个头文件(httplib.h),易于集成到项目中支持 HTTP 服务端(Server)和客户端(Client)同步 API 设计,简单易用支持 HTTPS(通过 OpenSSL)支持上传文件、表单解析、JSON 请求/响应等零外部依赖(可选启用 SSL/TLS)是一个极简、强大且灵活的 C++ HTTP 库快速搭建 Web 服务原型构建小型 RESTful API实现嵌入式系统的 HTTP 接口开发桌面工具的本地 HTTP 控制面板。
2025-07-08 16:37:34
67
原创 C++ 开发利器 Poco 库详解
Poco 是一个用 C++ 编写的开源类库,目标是简化现代 C++ 应用程序的开发过程。其名字来源于英文“”,强调其良好的可移植性和模块化结构。模块功能Foundation核心库,提供基本类型、异常、智能指针、字符串、日期时间等Util配置读取、命令行参数解析、服务抽象Net网络通信模块,支持 TCP/UDP、HTTP 客户端/服务器、FTP、SMTP 等XMLXML 解析与生成JSONJSON 解析与序列化Data数据库访问(支持 MySQL、PostgreSQL、SQLite、ODBC 等)
2025-07-08 16:20:36
492
原创 Linux sed 命令 详解
sed是一个基于模式匹配对文本进行过滤或修改的流编辑器。替换文本内容删除指定行插入或追加新内容打印特定行使用正则表达式进行高级匹配多条命令组合处理与交互式编辑器(如vim)不同,sed是非交互式的,适合在脚本中自动执行批量文本处理任务。sed是 Linux 下非常实用的文本处理利器,掌握其基本命令和正则表达式技巧,可以大幅提升你在日常运维、日志分析、自动化脚本编写等方面的效率。grep查找,sed修改,awk分析 —— 这就是 Linux 文本处理三剑客!
2025-07-08 16:04:46
934
原创 深入了解WebSocket协议
WebSocket是一个独立于HTTP协议的通信协议,但它可以通过HTTP握手来初始化连接。一旦握手成功,就可以在这个已经建立的TCP连接上进行任意数量的数据交换,直到任一方关闭连接为止。这种机制使得WebSocket非常适合那些需要持续保持连接状态的应用场景。
2025-07-04 16:14:09
41
原创 HTTP协议利用TCP的特性来实现长连接
首先,我们需要明确什么是“长连接”。在网络通信中,“长连接”指的是客户端和服务端之间的连接在完成一次数据交换后不会立即关闭,而是保持打开状态以供后续请求和响应使用。这种方式减少了建立和断开连接所需的额外开销,提高了效率,尤其是在短时间内需要进行多次交互的情况下。
2025-07-04 15:51:30
67
原创 MFC对话框启动时就隐藏窗口
是 Windows 系统发送给窗口的一个消息,当窗口的位置(Position)或大小(Size)即将改变时触发。阻止窗口被移动或调整大小修改窗口新的位置或大小控制窗口的 Z 序(层级顺序)0x0046是 Windows 开发中一个强大而灵活的消息,特别适合在窗口即将发生位置或大小变化时进行拦截和自定义控制。锁定窗口大小或位置自动居中或边缘吸附多窗口协同布局屏幕边界限制等高级功能掌握好这个消息,不仅能提升用户体验,也能让你写出更专业、更健壮的 Windows 应用程序。
2025-06-25 21:12:51
65
原创 Qt 元对象QMetaObject深入解析
是 Qt 中用于描述类的元信息的结构体。每个继承自QObject的类都会在编译时生成一个对应的类名父类信息属性列表(property)方法列表(method,包括信号和槽)枚举类型(enum)对象创建函数指针(用于动态创建对象)这些信息使得 Qt 能够在运行时对对象进行反射操作,例如通过字符串调用方法、获取/设置属性值等。是 Qt 元对象系统的核心,提供了类的元信息描述、反射能力和信号槽机制的基础支持。它的设计兼顾了性能与灵活性,使得 Qt 成为了一个高度可扩展、可维护的开发框架。
2025-06-24 14:47:04
81
原创 Windows 与 Linux 线程同步机制详解
同步机制Windows 特点Linux 特点共同点Mutex支持跨进程同步支持跨进程同步基础同步原语需要手动实现或第三方库内置支持优化读写并发API 更加面向对象API 更加传统 C 风格线程等待条件Semaphores提供了便捷的 API功能强大,支持跨进程同步控制访问数量提供了专门的事件对象可通过条件变量或信号量模拟线程间通知高效,仅限于单进程内的线程同步可通过实现,但不如临界区高效轻量级同步无论是 Windows 还是 Linux 平台, 可以对比起来记忆。
2025-06-23 13:34:49
139
原创 Linux 多进程间通信(IPC)详解
通信方式是否持久化是否支持非亲缘进程是否支持双向通信同步机制说明Pipe(匿名管道)❌❌❌手动只能在具有亲缘关系的进程之间使用,如父子进程。半双工通信。FIFO(命名管道)✅✅❌手动支持无亲缘关系进程,通过文件系统路径访问,先进先出模式。Message Queue(消息队列)✅✅✅内建每个消息有类型,可选择性接收,适用于结构化数据传递。Signals(信号)❌(部分可发送)✅❌(单向通知)内建/手动异步事件通知机制,适合轻量级通知,不适合传输大量数据。
2025-06-23 11:28:01
63
原创 Linux 下使用 C 创建守护进程
在 Linux 系统中,守护进程(Daemon Process)是一种在后台运行的特殊进程,它脱离了终端会话,并且通常用于执行系统任务或提供服务。常见的守护进程包括sshdhttpd和cron等。
2025-06-23 10:22:40
295
openGL的实用工具包 GLUT库
2011-10-23
UGUI Super ScrollView 最新版2.3.2
2019-02-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人