成体系的C/C++开发进阶专栏
目录
c/c++开发进阶及实战案例专栏按本人原来撰写设想,已经接近尾声了,现在将整个专栏整理出来,为各篇章博文进行归属整纳,并建立索引,方便各位粉丝读友阅读跳转,期望大家阅读了本人撰写该专栏博文后能有一丝收获。
一、成体系性c/c++开发进阶专栏
本人是CSDN博文的受益者,尤其是在刚开始工作的时候。那时能在上面写技术博客的往往都是工作经年,具有很多项目实践经验的技术大佬,博文相对也少,但技术点很聚焦,不用烦心要读那些博文。而目前在CSDN上,很多时候都是被这碎片化的知识博客载体所淹没,很多技术博文都是学生的学习日志,现在的我更多时候是将其作为问题解答器来使用。
知识碎片化会使得大家获取的知识越来越零散,不再是深入系统的学习,而是片断化地学习,且碎片之间缺乏相互关联和系统性。随着互联网“快餐知识”成为大家知识灌输的首要接触面,逐渐片面追求知识的广度而失去对知识深度的追求,可能造成对知识的不全面理解,犹如“皮毛知识”的学习。同时,碎片化的知识学习会使人产生一种信息过载和焦虑感。
因此在自己写博客时,希望能给读到本人博客的读友一个完整知识面、经论证可行、附带编译环境要求、工程配置及全源码的技术博文,希望大家在求证、爬资料、动手测试代码等少消耗一些时间、少绕一些弯路。
1.1 专栏特点
这是关于c/c++开发进阶的成体系的知识专栏,主要阐述在实际项目中使用的c/c++技术点,因此不会较少涉及排序等算法问题、面试问题,主要聚焦于大多c/c++开发中长用到的技术点。
所谓成体系性,主要在两个方面:
【1】本专栏会把c/c++项目开发涉及的一个个技术点作为主题,然后围绕一个个主题进行多方面论述,通常以该主题为主,并在其中穿插其关联的其他知识点。
【2】这些主题博文会从知识点原理、描述、API、及运用上展开,并给出具体的编译环境、编译要求、可编译通过的全代码及演示结果。
该专栏是c/c++开发进阶专栏,面向实际项目开发,因此不会在里面涉及到c/c++的语法讲解,也不会教大家应对面试、做题等,主要是描述一个个c/c++技术点,结合源代码案例,阐述这些技术点及涉及的函数、类、标准库,在项目中如何实际被调用、被运用及组合设计出新应用等为主。
1.2 涉及技术点概要
C/C++开发进阶专栏的会涉及一些主题与知识点:
-
函数设计:深入了解函数定义、函数参数、函数指针等知识要点,如何设计及优化函数执行效率。
-
类设计:如何设计类的基本成员函数,定义成员变量,研讨如何设计类的操作符、虚函数、继承体系等。
-
模板编程:泛型编程基本知识了解,研讨函数模板、类模板设计技巧,研讨泛型编程与标准库的密切关系及实现机理。
-
泛型编程与算法:学习泛型编程如何将常用的数据结构设计为标准容器,研究标准库中的顺序、关联等容器与排序、查找等算法结合,如何运用使程序设计更加高效和简单。
-
多线程和并发编程:使用多线程和并发编程可以提高程序的效率,需要了解线程同步、互斥、锁、协程、原子类型等相关概念。
-
内存管理和优化:需要注意内存泄漏、野指针等问题,了解C++的内存管理机制和内存优化方法,如STL的内存池技术等。
-
代码巧思:了解宏、断言、操作符、指针等对应代码优化的影响,代码如何从直白业务基本表象形态迭代调整到简短、优雅、高效的执行方式。
-
系统交互:了解系统操作的基本知识,如进程管理、内存管理、文件系统、IO操作、IT资源监测等。
-
使用第三方库和框架:使用常用的第三方库和框架,学习C/C++与第三方库、编译语言的交互,研讨服务API接口调用、网络通信等内容。
-
一切为项目服务:与业务相关不大,但系统必不可小的一些内容阐述,如何编译动、静态库,进行库管理调度,日志系统监测系统运维、计算资源监测等。
二、主题技术点及博文索引
2.1 函数主题(5篇)
【1】c/c++开发,无可避免的函数指针使用案例
c/c++开发,无可避免的函数指针使用案例_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的函数指针使用案例,描述函数指针一些常用知识点及使用技巧,通过源代码开发测试案例展示博文涉及的各个知识点https://blog.csdn.net/py8105/article/details/128985506 【2】c/c++开发,无可避免的函数参数实践
c/c++开发,无可避免的函数参数实践_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的函数参数实践,分析函数参数涉及的各个知识点及源码案例讲解https://blog.csdn.net/py8105/article/details/128996490 【3】C/C++,C++文件操作函数
C/C++,C++文件操作函数_py_free-物联智能的博客-CSDN博客C++文件操作函数,阐述C++操作文件的标准、非标准、stream流等访问、操作及管理文件函数。https://blog.csdn.net/py8105/article/details/127699775 【4】c/c++中有序容器、排序函数在应用用户自定义数据类型时比较函数设计
c/c++中有序容器、排序函数在应用用户自定义数据类型时比较函数设计_py_free-物联智能的博客-CSDN博客c/c++中有序容器、排序函数在应用用户自定义数据类型时比较函数设计https://blog.csdn.net/py8105/article/details/127086394 【5】C/C++开发,C++ lambda技术点应用
2.2 类主题(8篇)
【1】c/c++开发,无可避免的自定义类类型(篇一).常用基本函数实现案例
c/c++开发,无可避免的自定义类类型(篇一).常用基本函数实现案例_c++函数例子_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的自定义类类型(篇一).常用基本函数实现案例,一个包含默认构造函数,普通构造函数,拷贝构造函数,析构函数,赋值函数基本成员函数的类似String类的类实现案例https://blog.csdn.net/py8105/article/details/128867307 【2】c/c++开发,无可避免的自定义类类型(篇二).类组合关系
c/c++开发,无可避免的自定义类类型(篇二).类组合关系_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的自定义类类型(篇二).类组合关系,阐述类的各种组合关系,前置声明、类类型成员变量、友元关系、继承及派生、嵌套类、局部类等类组合相关知识点,给出演示及演示代码。https://blog.csdn.net/py8105/article/details/129582001 【3】c/c++开发,无可避免的自定义类类型(篇三).类与虚函数
c/c++开发,无可避免的自定义类类型(篇三).类与虚函数_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的自定义类类型(篇三).类与虚函数,全面深入地阐述类与虚函数的种种运用,给出演示及演示代码。https://blog.csdn.net/py8105/article/details/129615179 【4】c/c++开发,无可避免的自定义类类型(篇四).类与成员设计
c/c++开发,无可避免的自定义类类型(篇四).类与成员设计_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的自定义类类型(篇四).类与成员设计,阐述类设计下的成员变量、后成员函数设计规划,类成员与各种特定关键词结合运用与特定业务场景,给出源码及演示。https://blog.csdn.net/py8105/article/details/129634949 【5】c/c++开发,无可避免的自定义类类型(篇五).using与类设计
c/c++开发,无可避免的自定义类类型(篇五).using与类设计_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的自定义类类型(篇五).using与类设计,全面阐述using在类设计中的巧思与陷阱,详细阐述各个知识点,给出演示及源代码。https://blog.csdn.net/py8105/article/details/129662021 【6】c/c++开发,无可避免的自定义类类型(篇六).特殊的类enum
c/c++开发,无可避免的自定义类类型(篇六).特殊的类enum_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的自定义类类型(篇六).特殊的类enum,介绍枚举的不同c++标准版本下的应用,介绍无作用域枚举、有作用域枚举(强类型枚举)的不同及优劣、以及使用情况,阐述using enum的运用。给出演示及源代码。https://blog.csdn.net/py8105/article/details/129676168 【7】 c/c++开发,无可避免的自定义类类型(篇七).碎银几两
c/c++开发,无可避免的自定义类类型(篇七).碎银几两_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的自定义类类型(篇七).碎银几两,介绍各个标准可版本出现的一些关键词对类设计的影响,阐述了noexcept、空类、no_unique_address、explicit、constexpr等方面的知识点,给与演示及源代码。https://blog.csdn.net/py8105/article/details/129685524 【8】c/c++开发,无可避免的自定义类类型(篇八).为类妥善处理异常
2.3 内存管理(5篇)
【1】C/C++开发,无可避免的内存管理(篇一)-内存那些事
C/C++开发,无可避免的内存管理(篇一)-内存那些事_py_free-物联智能的博客-CSDN博客C/C++开发,无可避免的内存管理(篇一)-内存那些事,介绍硬件内存、系统内存、程序内存的知识点,着重探讨应用程序内存涉及的静态区、栈、堆等变量问题,以及指针、数组作为函数局部变量引发的内存问题。https://blog.csdn.net/py8105/article/details/129180213 【2】C/C++开发,无可避免的内存管理(篇二)-约束好跳脱的内存
【3】C/C++开发,无可避免的内存管理(篇三)-规划好内存
【4】C/C++开发,无可避免的内存管理(篇四)-智能指针备选
【5】C/C++开发,无可避免的内存管理(篇五)-c++与垃圾回收.水中捞月
2.4 模板编程(10篇)
【1】 c/c++开发,无可避免的模板编程实践(篇一)-函数模板及类模板
c/c++开发,无可避免的模板编程实践(篇一)-函数模板及类模板_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的模板编程实践(篇一),介绍函数模板及类模板的知识点及开发要点,给出实践源代码测试效果https://blog.csdn.net/py8105/article/details/129007643 【2】c/c++开发,无可避免的模板编程实践(篇二)-模板编程要点
c/c++开发,无可避免的模板编程实践(篇二)-模板编程要点_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的模板编程实践(篇二),介绍模板编码会引入那些新问题,该如何把控,那些隐秘的问题点需要我们编码时注意提高警惕,如何更好设计模板,并通过测试案例来说明。https://blog.csdn.net/py8105/article/details/129040834 【3】c/c++开发,无可避免的模板编程实践(篇三)-模板与多态、指针及元编程
c/c++开发,无可避免的模板编程实践(篇三)-模板与多态、指针及元编程_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的模板编程实践(篇三),介绍模板的一些高级应用,如静多态,动多态,递归模板元编码,模板与指针设计等,给出源代码及运行测试。https://blog.csdn.net/py8105/article/details/129067623 【4】c/c++开发,无可避免的模板编程实践(篇四)-顺序容器及运用
c/c++开发,无可避免的模板编程实践(篇四)-顺序容器及运用_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的模板编程实践(篇四),介绍类模板与容器的实现关系,介绍顺序容器vector(数组)、list(链表)、deque(双端队列)以及容器迭代器,以及基于基准容器vector、list、deque的容器适配器stack(堆栈)、queue(队列)、priority queue(优先队列),辅以源码测试验证及给出测试源码。https://blog.csdn.net/py8105/article/details/129098688 【5】c/c++开发,无可避免的模板编程实践(篇五)-关联容器及运用
c/c++开发,无可避免的模板编程实践(篇五)-关联容器及运用_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的模板编程实践(篇五),介绍关联容器的各种操作、关联知识点,自定义类型作为模板参数的应用,及提供测试案例及测试源代码。https://blog.csdn.net/py8105/article/details/129108158 【6】c/c++开发,无可避免的模板编程实践(篇六)-泛型算法及运用
c/c++开发,无可避免的模板编程实践(篇六)-泛型算法及运用_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的模板编程实践(篇六),介绍标准库泛型算法与模板设计,阐述算法与容器模板、迭代器模板的设计管理,阐述标准库算法特点及算法分类概述,通过源码验证阐述内容,提供源代码。https://blog.csdn.net/py8105/article/details/129112619 【7】c/c++开发,无可避免的模板编程实践(篇七)-自定义类模板及运用
c/c++开发,无可避免的模板编程实践(篇七)-自定义类模板及运用_cpp 模板编程_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的模板编程实践(篇七),模板编程,自定义模板设计与应用,构建二叉树类模板,扩展二叉树类模板的功能应用,通过测试代码验证模板可用性,给出测试及源代码。https://blog.csdn.net/py8105/article/details/129150798 【8】c/c++开发,无可避免的模板编程实践(篇八)-标准库模板封装适配及运用
c/c++开发,无可避免的模板编程实践(篇八)-标准库模板封装适配及运用_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的模板编程实践(篇八),模板编程,基于标准库容器模板创建自己的跨线程安全的容器适配器,创建模板参数类型的结构体模板作为该容器适配器的存储对象。这些模板将应用与一个日志记录类,该日志记录对象是线程独立的,并有一个子类磁盘管理线程类,用来实现磁盘剩余空间巡检与旧日志文件删除。https://blog.csdn.net/py8105/article/details/129170995 【9】 c/c++开发,无可避免的模板编程实践(篇九)-c++11的新顺序容器
c/c++开发,无可避免的模板编程实践(篇九)-c++11的新顺序容器_c++11新容器_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的模板编程实践(篇九)-c++11的新顺序容器,std::array容器,本质上是一个数组适配的结构体模板,可看做支持迭代器、安全检查的特殊数组;std::forward_list是两个模板参数T及std::allocator的类模板,是单链表,基本提供与std::list基本一致的功能。给出示例源代码及演示结果。https://blog.csdn.net/py8105/article/details/129427681 【10】c/c++开发,无可避免的模板编程实践(篇十)-c++11原位构造元素(emplace)
2.5 操作符(4篇)
【1】c/c++开发,无可避免的操作符operator(篇一),操作符重载
c/c++开发,无可避免的操作符operator(篇一),操作符重载_非成员运算符要求类类型或枚举类型的参数_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的操作符operator(篇一),操作符重载,较全面阐述了各种常规运算符、操作符和特殊运算符、操作符的重载设计,给出演示代码及演示结果。https://blog.csdn.net/py8105/article/details/129461618 【2】c/c++开发,无可避免的操作符operator(篇二),赋值操作符知多少
c/c++开发,无可避免的操作符operator(篇二),赋值操作符知多少_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的操作符operator(篇二),赋值操作符知多少,介绍最常用的赋值操作符,对直接赋值、复制赋值、移动赋值、复合赋值以及赋值操作符调用决议进行阐述,给演示源码及演示。https://blog.csdn.net/py8105/article/details/129473922 【3】c/c++开发,无可避免的操作符operator(篇三),类与操作符
c/c++开发,无可避免的操作符operator(篇三),类与操作符_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的操作符operator(篇三),类与操作符,像内置类型一样使用类类型。全面阐述类与各种操作符的关联及实现,给出演示及完整源代码。https://blog.csdn.net/py8105/article/details/129490566 【4】c/c++开发,无可避免的操作符operator(篇四),用好操作符
2.6 字符串及输入输出IO(6篇)
【1】C/C++开发,无可避免的字符串(篇一).字节数组
C/C++开发,无可避免的字符串(篇一).字节数组_c 定义字节数组_py_free-物联智能的博客-CSDN博客C/C++开发,无可避免的字符串(篇一).字节数组。标准库实现字符串功能主要是通过类似于std::vector容器的std::basic_string类模板实现的,该模板提供了针对各种字符型号的特化类,如using std::string = std::basic_string;博文还阐述了std::basic_string—_view、空终止字节字符串、空终止宽字符串、空终止多字节字符串等功能函数集,并给出演示代码。https://blog.csdn.net/py8105/article/details/129763021 【2】C/C++开发,无可避免的字符串(篇二).STL字符串及字符处理函数
C/C++开发,无可避免的字符串(篇二).STL字符串及字符处理函数_stl翻转字符串_py_free-物联智能的博客-CSDN博客C/C++开发,无可避免的字符串(篇二).STL字符处理,介绍字符指针、字符数组及区别,介绍标准库提供的字符串处理函数集、字符处理函数集以及自定义MyString类演示如何运用这些函数集,给出演示源代码。https://blog.csdn.net/py8105/article/details/129776842 【3】C/C++开发,无可避免的IO输入/输出(篇一).设备层流IO处理
C/C++开发,无可避免的IO输入/输出(篇一).设备层流IO处理_py_free-物联智能的博客-CSDN博客C/C++开发,无可避免的IO输入/输出(篇一).设备层流IO处理,介绍std::ostream类涉及的继承体系、流状态、流全局对象、缓冲区刷新及自定义输出操作符operatorhttps://blog.csdn.net/py8105/article/details/129795505 【4】C/C++开发,无可避免的IO输入/输出(篇二).文件流IO处理
C/C++开发,无可避免的IO输入/输出(篇二).文件流IO处理_py_free-物联智能的博客-CSDN博客C/C++开发,无可避免的IO输入/输出(篇二).文件流IO处理,介绍fstream、ofstream、ifstream三个文件流IO类的文件格式、格式管理、流状态、缓冲区实现及管理、有格式输入输出、无格式输入输出等知识点,给完整演示代码。https://blog.csdn.net/py8105/article/details/129809162 【5】C/C++开发,无可避免的IO输入/输出(篇三).字符串流(内存流)IO处理
C/C++开发,无可避免的IO输入/输出(篇三).字符串流(内存流)IO处理_py_free-物联智能的博客-CSDN博客C/C++开发,无可避免的IO输入/输出(篇三).字符串流(内存流)IO处理,介绍字符串流系列类stringstream/istringstream/ostringstream的继承体系、缓冲方式、打开格式、开发运用等内容,给出完整演示源代码。https://blog.csdn.net/py8105/article/details/129830327 【6】C/C++开发,无可避免的IO输入/输出(篇四).c实现浅述
2.7 多线程及协程(6篇)
【1】C/C++开发,无可避免的多线程(篇一).跨平台并发编程姗姗来迟
C/C++开发,无可避免的多线程(篇一).跨平台并发编程姗姗来迟_py_free-物联智能的博客-CSDN博客C/C++开发,无可避免的多线程(篇一)并发编程姗姗来迟,介绍如何搭建支持c++11以上版本的编译器,并阐述c/c++多线程内容以及c/c++在c++11标准前pthread函数集及c++11标准后thread类对于多线程编程的不同应用及案例,并阐述了c++20标准提出的std::jthread类。https://blog.csdn.net/py8105/article/details/129278973 【2】C/C++开发,无可避免的多线程(篇二).thread与其支持库
C/C++开发,无可避免的多线程(篇二).thread与其支持库_py_free-物联智能的博客-CSDN博客C/C++开发,无可避免的多线程(篇二).thread与其支持库,介绍了线程相关的原子类型、原子操作支持库(原子类型特化、原子布尔类型、内存同步顺序)、thread辅助支持库(线程、互斥、条件变量和future)等知识点,给出测试验证及测试源码。https://blog.csdn.net/py8105/article/details/129305084 【3】C/C++开发,无可避免的多线程(篇三).协程及其支持库
C/C++开发,无可避免的多线程(篇三).协程及其支持库_c协程库_py_free-物联智能的博客-CSDN博客C/C++开发,无可避免的多线程(篇三).协程及其支持库,介绍c++20标准的协程支持库内各个相关类型,说明它们所提供协程的编译时与运行时支持。对协程句柄、协程可等待体、无操作协程以及co_await、co_yield、co_return这些关键词应用展开阐述,通过源代码测试验证应用性。https://blog.csdn.net/py8105/article/details/129336892 【4】C/C++开发,无可避免的多线程(篇四).线程与函数的奇妙碰撞
C/C++开发,无可避免的多线程(篇四).线程与函数的奇妙碰撞_py_free-物联智能的博客-CSDN博客C/C++开发,无可避免的多线程(篇四).线程与函数的奇妙碰撞,讲述线程thread类如何于函数引用、函数指针、函数对象(包括lambda表达式、std::function函数包装器)相结合,一起执行并发任务。还进一步描述函数转发包装器std::bind如何将类成员函数、操作符、嵌套对象成员函数等与线程thread结合,巧妙实现多线程逻辑。给出完整演示信息及源代码。https://blog.csdn.net/py8105/article/details/129345145 【5】C/C++开发,无可避免的多线程(篇五).实现自己的线程封装类
C/C++开发,无可避免的多线程(篇五).实现自己的线程封装类_c++线程类封装_py_free-物联智能的博客-CSDN博客C/C++开发,无可避免的多线程(篇四).实现自己的线程封装类,如何基于c++98的pthread_t封装线程类,如何基于c++11标准库的std::thread封装线程类,并与c++98的版本保持一致,最后将两个版本的线程类合成一个线程版本mythread,给出实现过程、演示结果及源代码。https://blog.csdn.net/py8105/article/details/129363133 【6】C/C++开发,无可避免的多线程(篇六).线程池封装类
2.8 宏、断言(2篇)
【1】c/c++开发,无可避免的宏定义使用案例
c/c++开发,无可避免的宏定义使用案例_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的宏定义使用案例,c/c++编程中,如何利用好宏这个特性https://blog.csdn.net/py8105/article/details/128969681 【2】C/C++开发,c/c++断言(预处理断言、编译断言、运行断言)
三、实践案例及博文索引
3.1 通信设计(8篇)
【1】C/C++开发,udp组播通信实现(c++)
C/C++开发,udp组播通信实现(c++)_py_free-物联智能的博客-CSDN博客UDP组播方式实现案例源码https://blog.csdn.net/py8105/article/details/100180383 【2】 C/C++开发,利用epoll创建自己的后台服务,实现对各个客户端网络通信(含示例代码)
C/C++开发,利用epoll创建自己的后台服务,实现对各个客户端网络通信(含示例代码)_epollpri_py_free-物联智能的博客-CSDN博客利用epoll创建自己的后台服务,实现对各个客户端网络通信(含示例代码),设计一个epoll线程接口类包含线程能力、epoll API能力及消息缓存队列能力https://blog.csdn.net/py8105/article/details/126970247 【3】 C/C++开发,基于epoll的tcp-socket通信服务模块
C/C++开发,基于epoll的tcp-socket通信服务模块_c++ windows中epoll_py_free-物联智能的博客-CSDN博客最近一直研究对自己的开源物联网边缘服务瘦身,已适应更短缺资源的设备上运行,因此需要裁减第三方库的依赖,由于原先tcp-socket通信是调用第三方库的,因此准备动手为开源项目写一个简要适合项目需要的服务模块。由于服务端需要针对每个客户端进行定制下行通讯需求,因此采用epoll以便于明确知道句柄进行特定通信。https://blog.csdn.net/py8105/article/details/105973950 【4】c/c++开发,c++无可避免的TCP/Socket通信开发实战案例
c/c++开发,c++无可避免的TCP/Socket通信开发实战案例_c++ tcp库_py_free-物联智能的博客-CSDN博客c/c++开发,c++无可避免的TCP/Socket通信开发实战案例,一步步引导,如何开发一个TCP/Socket通信服务程序,如何实现多客户端支持,如何提供通信效率,如何进行编解码及如何进行结构化块数据传输等,并给出完整源码供大家学习。https://blog.csdn.net/py8105/article/details/128903850 【5】c/c++开发,无可避免的代码重构实战(基于前文TCP/Socket通信开发案例)
c/c++开发,无可避免的代码重构实战(基于前文TCP/Socket通信开发案例)_c++代码重构_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的代码重构实战(基于前文TCP/Socket通信开发案例)https://blog.csdn.net/py8105/article/details/128933842 【6】C/C++开发,物联网通信-如何基于TCP/IP简要设计业务应用协议(c++案例)
C/C++开发,物联网通信-如何基于TCP/IP简要设计业务应用协议(c++案例)_c 网络协议开发怎么设计_py_free-物联智能的博客-CSDN博客如何基于TCP/IP简要设计业务应用协议(c++案例)https://blog.csdn.net/py8105/article/details/126749510 【7】C/C++开发,异步串行接口(uart)通信示例
C/C++开发,异步串行接口(uart)通信示例_c++ uart_py_free-物联智能的博客-CSDN博客一直以来在串口通信方面都很信任libctb,其对serial/gpib通知支持win/linux,的确好用,但最近实现arm的串口通信时发现ctb还是有点复杂,因此想到构建一个相对简单的串口通信接口,主要依赖于linux的termios.h,termios 结构是在POSIX规范中定义的标准接口,通过设置termios类型的数据结构中的值和函数调用,你就可以对终端接口进行控制。更多描述可以自行在命...https://blog.csdn.net/py8105/article/details/105813168 【8】 C/C++开发,c++线程通信-构建另类的线程间数据传输信道
3.2 资源监测(6篇)
【1】C/C++开发,根据磁盘或网卡创建软件License约束(c++)
C/C++开发,根据磁盘或网卡创建软件License约束(c++)_c++ license_py_free-物联智能的博客-CSDN博客C/C++开发,根据磁盘或网卡创建软件License约束(c++),根据磁盘或网卡创建软件License的方法,其采用对称式加密,即加密和解密使用同一个密钥,加密算法是自定义的,对软件进行版权保护,使其在合适机器上才能运行。https://blog.csdn.net/py8105/article/details/90229088 【2】c/c++实现linux下各个磁盘统计数据获取
c/c++实现linux下各个磁盘统计数据获取_py_free-物联智能的博客-CSDN博客c/c++实现linux下各个磁盘统计数据获取,打开“df”命令管道文件句柄,识别该文件内容格式及字段描述,从中读取到需要的数据信息。https://blog.csdn.net/py8105/article/details/127144417 【3】c/c++实现linux下各个内存统计数据获取
c/c++实现linux下各个内存统计数据获取_linux获取内存参数 c++_py_free-物联智能的博客-CSDN博客c/c++实现linux下各个内存统计数据获取,linux各个内存数据信息可通过/proc/meminfo文件句柄进行访问获取,本文实现就是打开“cat /proc/meminfo”命令管道文件句柄,识别该文件内容格式及字段描述,从中读取到需要的数据信息https://blog.csdn.net/py8105/article/details/127143784 【4】c/c++实现linux下各个CPU统计信息获取
c/c++实现linux下各个CPU统计信息获取_linux获取cpu参数 c++_py_free-物联智能的博客-CSDN博客c/c++实现linux下各个CPU统计信息抓取,调用系统命令,打开“cat /proc/stat”命令管道文件句柄,识别该文件内容格式,从中读取到需要的cpu统计数据信息https://blog.csdn.net/py8105/article/details/127141041 【5】c/c++实现linux下各个网络流量抓取
c/c++实现linux下各个网络流量抓取_c++ 获取网卡流量_py_free-物联智能的博客-CSDN博客c/c++实现linux下各个网络流量抓取,通过cat /proc/net/dev文件获取信息,结合awk进行过滤提取输出信息,在c/c++中调用popen函数文件句柄,进行访问获取网络流量相关信息https://blog.csdn.net/py8105/article/details/127135477 【6】C/C++开发,c/c++如何实现根据磁盘空间管理自己的日志文件案例
3.3 服务接口(10篇)
【1】c/c++开发,无可避免的文件访问开发案例
c/c++开发,无可避免的文件访问开发案例_py_free-物联智能的博客-CSDN博客c/c++开发,无可避免的文件访问开发案例,基于标准的C库函数fopen, fclose, fread, fwrite, fgetc, fgets等系列函数,创建文件IO模块,实现对文件的读写、行内容读写、行内容分割,以及文件目录及文件名的创建、删除、重命名、检查等IO功能,通过示例代码展示了文件IO模块的应用https://blog.csdn.net/py8105/article/details/128959951 【2】C/C++开发,基于SMTP协议的C++邮件接口实现
C/C++开发,基于SMTP协议的C++邮件接口实现_vs c++ 邮件收发_py_free-物联智能的博客-CSDN博客实现采用电子邮件发送一个实时调度统计的报表给客户,提炼出来独立的C++邮件接口,方便后续可用,也分享出来给感兴趣的小伙伴们参考一下使用。https://blog.csdn.net/py8105/article/details/103837469 【3】C/C++开发,基于IBM纯 c标准MQTT源码,实现纯C语言访问阿里云物联网平台开发案例
C/C++开发,阿里云短信服务接口的c++实现_c++ 阿里云_py_free-物联智能的博客-CSDN博客C/C++开发,阿里云短信服务接口的c++实现,采用acl_master实现调用阿里云短信服务接口,完成签名算法、base64算法及HTTP协议连接通信。https://blog.csdn.net/py8105/article/details/80089001 【5】qt5.8(c++)实现阿里云人脸识别云接口
qt5.8(c++)实现阿里云人脸识别云接口_阿里云人脸识别接口_py_free-物联智能的博客-CSDN博客qt5.8(c++)实现阿里云人脸识别云接口,通过qt实现图片编解码及签名认证,调用阿里云人脸识别API接口获得图片识别结果信息。https://blog.csdn.net/py8105/article/details/81452708 【6】C/C++开发,利用acl_master的http库进行聚合天气预报信息的数据抓取
C/C++开发,利用acl_master的http库进行聚合天气预报信息的数据抓取_py_free-物联智能的博客-CSDN博客C/C++开发,利用acl_master的http库进行聚合天气预报信息的数据抓取https://blog.csdn.net/py8105/article/details/82179126 【7】利用acl_master的http库进行聚合数据信息的数据抓取
https://blog.csdn.net/py8105/article/details/79510873https://blog.csdn.net/py8105/article/details/79510873 【8】C/C++开发,gsoap的c++ server和java client实现
C/C++开发,gsoap的c++ server和java client实现_gsoap vs2015_py_free-物联智能的博客-CSDN博客gsoap的c++ server和java client实现https://blog.csdn.net/py8105/article/details/74842048 【9】C/C++开发,将c++静态库实现二次封装供java调用
C/C++开发,将c++静态库实现二次封装供java调用_c项目封装jni_py_free-物联智能的博客-CSDN博客JNI是Java Native Interface的缩写,中文为JAVA本地调用。使用JNI可以很方便的用我们的Java程序调用C/C++程序https://blog.csdn.net/py8105/article/details/69788513 【10】C/C++开发,基于cectd源码打造etcd数据库的win/linux静态编译的c-SDK包
3.4 日志系统(3篇)
【1】C/C++开发,利用c语言中宏定义及宏替换特性构建自己的log输出
C/C++开发,利用c语言中宏定义及宏替换特性构建自己的log输出_py_free-物联智能的博客-CSDN博客利用c语言中宏定义及宏替换特性构建自己的log输出https://blog.csdn.net/py8105/article/details/126917781 【2】C/C++开发,c++中如何利用VA_LIST 和单体模式,构建自己的log小系统
C/C++开发,c++中如何利用VA_LIST 和单体模式,构建自己的log小系统_c++ va_list_py_free-物联智能的博客-CSDN博客c++中如何利用VA_LIST 和单体模式,构建自己的log小系统,设计一个单体类CLogger,该类具备独立线程能力,采用一个队列来接收来自各个线程之间、各个功能模块之间的日志推送,CLogger实例负责将加入到队列的日志,添加一些附加信息后,逐条记录在文件中。 为了区分日志事件,通过枚举创建日志类型;针对日志运行是一个长期的过程,不可能全部存储在一个日志文件中,因此指定一个文件目录,并按天来存放.https://blog.csdn.net/py8105/article/details/126930886 【3】C/C++开发,c/c++如何实现根据磁盘空间管理自己的日志文件案例
3.5 工程服务(9篇)
【1】C/C++开发,c++代码如何实现在win/linux下创建编译及部署后台服务,并管理其他服务
C/C++开发,c++代码如何实现在win/linux下创建编译及部署后台服务,并管理其他服务_c++windows编译linux_py_free-物联智能的博客-CSDN博客c++代码如何实现在win/linux下创建编译及部署后台服务,并管理其他服务https://blog.csdn.net/py8105/article/details/126642124 【2】c/c++中如何实现动态库动态加载(含完整工程示例代码)
C/C++开发,用svn管理软件版本信息_$wcnow_py_free-物联智能的博客-CSDN博客C/C++开发,用svn管理软件版本信息,自动化生成版本信息及调用https://blog.csdn.net/py8105/article/details/69211071 【4】C/C++开发,根据磁盘或网卡创建软件License约束(c++)
C/C++开发,计算公式库学习_muparser库_py_free-物联智能的博客-CSDN博客通过计算公式库(muparser),快速和简单地解析数学表达式及进行计算https://blog.csdn.net/py8105/article/details/68954214 【6】C/C++开发,BF模式匹配算法改良
C/C++开发,BF模式匹配算法改良_改造bf算法_py_free-物联智能的博客-CSDN博客BF算法是带回溯的模式匹配算法,如果缓冲标记已做的匹配,减少回溯,可以提高时间效率,当然会牺牲空间,实际运用中需要做权衡考虑https://blog.csdn.net/py8105/article/details/68958591 【7】C/C++开发,散列函数与层级结构数据
C/C++开发,散列函数与层级结构数据_散列函数分组迭代散列算法的层次结构_py_free-物联智能的博客-CSDN博客C/C++开发,散列函数与层级结构数据,使用散列表重新组织树结构,使其更扁平化https://blog.csdn.net/py8105/article/details/68952202 【8】C/C++开发,计算机使用护眼程序
C/C++开发,计算机使用护眼程序_怎么样编写一个护眼程序_py_free-物联智能的博客-CSDN博客通过一个win小服务定期锁屏或调用屏保进行计算机使用时长提醒https://blog.csdn.net/py8105/article/details/68955538 【9】基于Zero-Ice搭建的物联网监控平台