- 博客(15)
- 资源 (4)
- 收藏
- 关注
原创 类型转换 static_cast、reinterpret_cast等
1、强制类型转换能抑制编译器报错2、reinterpret_cast危险,使用const_cast意味的设计缺陷3、一般static_cast和reinterpret_cast很好取代C语言类型转换。
2024-06-27 13:37:31 401
原创 CRTP介绍、使用和原理
具体而言,CRTP允许派生类在编译时通过继承和重载来覆盖基类的行为,而不需要运行时的虚函数调用。约束较大:使用CRTP模式需要遵循一定的模式和规范,包括正确地定义基类和派生类之间的关系,并使用正确的模板参数,这可能增加了代码的复杂性和维护成本。可读性较差:CRTP模式使用了模板元编程技术,需要在设计和使用时理解和处理模板参数、派生类和基类之间的关系,使得代码可读性较差。编译时间增加:CRTP模式使用了模板元编程技术,这可能导致编译时间的增加,特别是在使用大型和复杂的CRTP层次结构时。
2023-05-16 13:51:59 877
原创 C++方法链式调用
方法链式调用是一种编程风格,它允许在一个对象上连续调用多个方法,每个方法都返回当前对象的引用,以便可以继续在该对象上调用其他方法。这种风格可以提高代码的可读性和简洁性。
2023-05-11 14:25:57 701
原创 java socket 解析自定义包头
java socket 打包和解包自定义包头格式的数据包。1、背景:用java接收 C++服务推过来的数据,采用TCP协议,数据格式是自定义二进制的包头+pb数据构成的数据包。2、包头格式,二进制格式12字节长度:packethead:{uint32 packetlength;//包体长度uint32 packetno;//包序号uint16 type;//包类型uint16 version;//版本号当前固定为100}3、代码实现接收和发送数据:public class NetWo
2022-01-27 14:27:52 2726
转载 详解二分查找算法
1、 详解二分查找算法我周围的人几乎都认为二分查找很简单,但事实真的如此吗?二分查找真的很简单吗?并不简单。看看 Knuth 大佬(发明 KMP 算法的那位)怎么说的:Although the basic idea of binary search is comparatively straightforward, the details can be surprisingly tricky...这句话可以这样理解:思路很简单,细节是魔鬼。本文就来探究几个最常用的二分查找场景:寻找一个数、寻找左
2021-07-16 09:44:12 997
原创 结构体联合体问题
一个结构体成员变量的问题无法引用 “_xxxxxxxx” 的默认构造函数 – 它是已删除的函数C/C++warning C4624: “_xxxxxx”: 已将析构函数隐式定义为“已删除”已将析构函数隐式定义为“已删除”结构体和联合体定义如下:typedef struct _tagMqttInfo{ string strGatewayId; TMqttDataTransfer tMqttDataTransfer; (自定义结构体)
2021-06-03 15:55:15 1006
原创 C++ reverse函数使用
[STL]C++ reverse、remove、remove_if1、reverse函数使用函数功能:将序列[first,last)的元素在原容器中颠倒重排,包含在algorithm库中C++头文件 -------------- #include reverse函数用于反转在 **[first,last) **范围内的顺序(包括first指向的元素,不包括last指向的元素);reverse函数***没有返回值***;时间复杂度O(n);eg:1、交换vector容器中元素的顺序vecto
2021-05-28 16:27:31 10734
原创 float网络序和主机序、字节流得到float实际数据
float网络序和主机序、字节流得到float实际数据使用union来实现typedef Tempdata{ float f; int i;} uTempdata//union所有成员内存使用相同的位置//将浮点转换为字节流float htonf(float f){ uTempdata utd; utd.f=f; utd.i=htonl(utd.f); return utd.f;}//字节流转float数据float ntohf(float f){ uTempdata
2021-05-17 17:28:40 296 1
原创 int转bcd编码
数字用bcd编码存储(转bcd编码)#include <stdio.h>#include <stdarg.h>int ToBCD(char *bcd, int len, ...){ va_list valist; va_start(valist, len); //初始化valist for (int i = 0; i < len; i++) { int val = va_arg(valist, int)
2021-05-17 17:07:33 800
原创 python将excel数据解析成json格式
python将excel数据解析成json1、需求场景 把excel表格里面的数据 读取出来当json 的value值。key值自己定义的。2、安装xlrd库在win上 cmd 中 直接 pip install xlrd 成功即可。3、代码实现import xlrddef readExcelData(): data = ['"username":"admin"','"password":"admin"', '"nodeId":"1"'] #key值 keyD
2020-11-24 15:46:30 813
原创 C++ String替换&分割指定字符串
C++ String替换&分割指定字符串1、C++ String替换指定字符串C++的string对象提供了replace方法来实现字符串的替换,本文实现对于将字符串中某个字符串全部替换的功能。string& replace_all(string& str, const string& strold, const string& strvalue) { while (true) { string::size_type pos(0); if ((pos
2020-08-24 14:25:57 2049 1
原创 2、nginx简单的反向代理和负载均衡
2、nginx简单的反向代理和负载均衡一、准备工作1、俩台web服务器(有俩虚拟机上安装nginx实现) linux上的配置: 按照这篇博客来配置:https://blog.csdn.net/weixin_39126199/article/details/1062354602、用windows上的nginx作为反向代理服务器。 主要是修改 windows上的配置文件。下载链接:http://nginx.org/en/docs/windows.html二、修改Win上的配置(实现
2020-06-03 14:37:17 142
原创 ubuntu源码安装nginx
ubuntu源码安装nginx1、下载对应的安装包1.1、下载: 1、官方: http://nginx.org/ 2、Nginx相关依赖:(安装nginx前需要先安装一些依赖) 1、OpenSSL:用于加密 。下载网址:https://www.openssl.org 2、PCRE:用于解析正则表达式。 下载网址:https://ftp.pcre.org/pub/pcre/ 3、ZLib:压缩解压缩。下载网址:http://zlib.net2
2020-05-20 15:13:38 439
C++POCO-lib(中文文档).pdf
2020-08-04
虚拟串口VSPD7.2+9.0+串口调试助手+modbus工具.rar
2020-06-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人