自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(81)
  • 资源 (1)
  • 收藏
  • 关注

原创 通俗易懂唠唠SOME/IP——SOME/IP错误处理

在method通信中,Response消息中返回错误码(此时MessageType =0x80)错误处理可以在应用层完成,也可以在通信层完成。因此SOME/IP支持两种不同的机制。这一部分在平时工作中几乎没有遇到过,所以只是解读协议文档,没有例子。具体的错误消息(此时MessageType =0x81)。

2025-02-14 14:19:24 415

原创 通信易懂唠唠SOME/IP——SOME/IP 协议规范

主要介绍SOME/IP协议中远程过程调用RPC,事件通知Event。

2025-02-04 15:16:30 879

原创 通信易懂唠唠SOME/IP——SOME/IP-SD报文格式

• Locate service instances.确定服务的位置• Detect if service instances are running.检测服务实例是否在运行• Implement the Publish/Subscribe handling.实现发布和订阅的处理服务发现的主要作用,是确认服务的可用性且控制发送event消息的行为。

2025-02-04 13:00:00 1482

原创 通信易懂唠唠SOME/IP——SOME/IP-SD服务发现阶段和应答行为

服务发现应该至少包含3个阶段。

2025-02-04 10:00:00 1100

原创 通信易懂唠唠SOME/IP——SOME/IP消息格式

SOME/IP是Scalable service-Oriented MiddlewarE over IP (SOME/IP)的缩写,。广泛应用于汽车行业嵌入式通信。它是基于服务的,服务可以由0个或多个Event,Method,Field组成。Event是一种单向的数据传输,在数据发生变化时由服务端发给客户端,或者周期发送。Method是一个被调用的方法。是由客户端调用,在服务端实现的方法。Field表示一个状态,因此有Getter,Setter方法(Menthod),有Notify(Event)。

2025-02-03 21:33:51 1248

原创 通信易懂唠唠SOME/IP——SOME/IP协议简介

SOME/IP是Scalable service-Oriented MiddlewarE over IP (SOME/IP)的缩写,基于IP的可扩展面向服务的中间件。

2025-02-02 21:26:55 435

原创 状态模式c++实现

状态模式运行对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。

2022-12-29 16:56:14 341

原创 虚拟机桥接模式连不上网问题(非桥接网卡原因)

虚拟机和宿主机可以互相ping通,但是ping www.baidu.com不能成功常见的原因是桥接到的网卡不对,网上搜也是大部分搜到这种原因解决办法。参见我遇到的问题不是这个,是因为我没有配置网关。。。。。真是一个简单问题卡一天啊方法如下。...

2022-09-01 17:19:50 7726 3

原创 迭代器模式c++实现

迭代器模式提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露其内部的表示。迭代器模式让我们能游走于聚合内的每一个元素,而又不暴露其内部表示。类图如下代码实现如上面需求场景中,我们使用迭代器模式,让两个具体的聚合类(餐馆和咖啡馆)都提供一个createIterator的接口,客户端使用该接口返回的iterator遍历聚合体中各元素。这样客户端不需要关系聚合体的具体实现,针对不同聚合体提供的iterator使用方法一样。先定义迭代器接口(抽象类Iterator)public:};

2022-08-28 16:51:34 830

原创 模板方法模式C++实现

模板方法模式在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。类图如下如上面需求场景中,在咖啡因饮料基类中,定义制作饮料的步骤(prepareRecipe方法中),子类茶和咖啡都不能改变这个步骤,但具体的冲泡方法brew和加调料方法addCondiments在子类中被重新定义。代码实现针对需求场景中的例子代码实现如下// CaffeineBeverage.cpp : 此文件包含 "main" 函数。............

2022-08-04 18:42:00 399

原创 适配器模式C++实现

适配器模式将一个类的接口,转换成客户期望的另一个接口。适配器让原本接口不兼容的类可以合作无间。类图如下C++设计模式-适配器模式-知乎(zhihu.com)侵删)客户使用适配器的过程如下1、客户通过目标接口调用适配器的方法对适配器发出请求。2、适配器使用被适配者接口把请求转换成被适配者的一个或多个调用接口。3、客户收到调用的结果,但并未察觉这一切是适配器在起到转换作用。代码实现{public{}}i.........

2022-08-01 22:01:42 660

原创 【无标题】openssl引擎编写undefined symbol: bind_engine解决方法

root@cd2e1925ffbe:/work/CyberSecurityCode/OSSL_EngineX# ./build/basic_digest.oOpenSSL failed to load required configuration140691275559808:error:2506406A:DSO support routines:dlfcn_bind_func:could not bind to the requested symbol name:crypto/dso/dso_dlf.

2022-05-30 15:50:25 744 1

原创 SSL routines:tls_process_server_certificate:certificate verify failed:证书验证失败问题

问题证书验证失败。在pc上跑openssl服务器端程序,板子上跑客户端程序,开启双向验证,板子端验证证书失败,错误如下。我确认证书是没有问题的。因为证书是我自己用命令生成的自签名证书,且服务器和客户端都在本地pc运行时ok的。所以应该是环境问题。root@a1000:/mnt/luyanhui/client/connect-2-mypc# ./ssl-clientBegin tcp socket...Begin SSL negotiation28147341258475...

2022-05-23 11:47:30 8383 8

原创 openssl编程编译错误undefined reference to `SSL_get1_peer_certificate‘解决方法

问题:[100%] Linking C executable example_ssl_servCMakeFiles/example_ssl_serv.dir/example_ssl_serv.c.o: In function `main':example_ssl_serv.c:(.text+0x49e): undefined reference to `SSL_get1_peer_certificate'collect2: error: ld returned 1 exit statusCMa

2022-05-19 11:49:36 9284

原创 命令模式C++实现

命令模式-将请求封装成对象,这可以让你使用不同的请求、队列,或者日志请求来参数化对象。命令模式也可以支持撤销操作。命令模式将发出请求的对象和执行请求的对象解耦,请求对象和执行请求的对象是通过命令对象进行沟通的,命令对象封装了接受者和一个或一组动作。在c++中,命令对象持有一个接受者(执行请求的对象)的指针或引用,实现一个execute方法,execute方法中调用接受者的某些接口,实现具体请求命令。命令模式类图......

2022-05-15 18:54:14 640 4

原创 单例模式C++实现

单例模式,通俗易懂的讲,就是只有一个单一的实例。设计原则:1、类的构造函数设计成私有的。这是为了不让外部实例化该类。2、提供一个获得实例的接口。任何使用该类对象的地方,都通过这个接口获得该对象实例。在这个接口中确保只实例化一个对象。一般是如果对象不存在,实例化对象;如果存在直接返回。具体可以看代码更清楚。......

2022-01-30 11:24:30 1742

原创 工厂模式C++实现

参考书籍《Head First设计模式》提到工厂模式有三种比较容易混淆的模式,分别是简单工厂模式、工厂方法模式和抽象工厂模式。它们之间的区别是:简单工厂(静态工厂)模式简单工厂其实不是一个设计模式,反而比较像是一种编程习惯。但由于经常被使用,很多地方也都把它叫做设计模式。简单工厂模式的类图简单工厂模式的类图如下,图片链接工厂模式--简单工厂模式 - 简书,侵删 Factory工厂类,简单工厂模式的核心。其包含一个创建产品的方法......

2021-11-05 17:25:45 601

原创 装饰者模式C++实现

参考书籍《Head First设计模式》设计模式和设计原则 装饰者模式动态地将责任附加到对象上。若要扩展功能,装饰者模式提供了比继承更有弹性的替代方案。装饰者模式遵循的设计原则:类应该对扩展开放,对修改关闭。装饰者模式中的类 装饰者模式中的类如下图,图片链接23种设计模式-装饰器模式_老杨叔叔-优快云博客,侵删。其中Component抽象组件类,即被装饰的类,每个组件都可以单独使用,或者被装饰者包起来使用。......

2021-09-28 22:04:49 473

原创 观察者模式C++实现

参考书籍《Head First设计模式》设计模式和设计原则观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。观察者模式遵循的设计原则:观察者模式中的类提到观察者模式,常常会看到类似于下面的图。下图中包含了策略模式中用到的类,其中Stategy策略抽象类,定义了算法的接口(下面案例中的FlyBehavior和QuackBehavior是策略抽象类)。ConcreteStrategy具体策略类,实现具体算法(下面案例中的FlyWith

2021-09-27 15:27:06 434

原创 策略模式C++实现

参考书籍《Head First设计模式》设计模式和设计原则策略模式定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。策略模式采用的设计原则:1、找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。2、针对接口编程,而不是针对实现编程3、多用组合少用继承策略模式中的类提到设计模式,常常会看到类似于下面的图。下图中包含了策略模式中用到的类,其中Stategy策略抽象类,定义了算法的接口(下面案例中的FlyBeh

2021-09-24 22:27:40 398

原创 Unknown module(s) in QT: webenginewidgets原因及解决办法

今天学习时,想使用QWebEngineView做一个显示网页的小项目。在.pro文件中加入QT += webenginewidgets这句后,编译一直报下面错误Project ERROR: Unknown module(s) in QT: webenginewidgets 查资料常见原因以下三种:1)QT版本过低。需要QT版本号为QT5.5版本及其以上。从Qt5.5开始,Qt WebKit模块被废弃,取而代之的是Qt WebEngine模块。且只有MSVC才支持该...

2021-06-27 18:52:38 40987 17

原创 我的QT Creator学习笔记(三十六)——进程和线程

参考文献:《Qt Creator 快速入门》第三版 霍亚飞编著一、进程1.1 进程相关类、接口、信号等在当前的应用程序中可以调用外部的程序来实现一些功能,这就会使用到进程。Qt的QProcess类用来启动一个外部程序(进程)并与其进行通信。 要启动一个进程可以使用QProcess::start()函数,将程序名称和运行这个程序所要使用的命令行参数作为该函数的参数。 执行完start()函数后QProcess进入Starting状态,当程序已经...

2021-06-26 16:27:50 987

原创 我的QT Creator学习笔记(三十五)——网络编程之UDP与TCP

参考文献:《Qt Creator 快速入门》第三版 霍亚飞编著1、UDPUDP(User Datagram Protocol,用户数据报协议)是一个轻量级的、不可靠的、面向数据报的、误连接的协议,用于可靠性不是非常重要的情况。UDP一般分为发送端和接收端。QUdpSocket类用来发送和就收UDP数据报,继承自QAbstractSocket。这里的socket就是所谓的“套接字”,简单来说“套接字”就是一个IP地址加一个port端口号。1.1UDP编程示例下面是一个UDP编程示例..

2021-06-14 19:50:39 1101 4

原创 我的QT Creator学习笔记(三十四)——网络编程之HTTP与FTP

Qt中的Qt Network 模块用来编写基于TCP/IP的网络程序,其中提供了较低层次的类,比如QTcpSocket、QTcpServer和QUdpSocket等,来表示低层次的网络概念;还有高层次的类,比如QNetworkRequest、QNetworkReply和QNetworkAccessManager,使用通用的协议类来执行网络操作;...

2021-06-13 13:46:40 710

原创 基于百度地图sdk的地图app开发(七)——导航和模拟导航

这是基于百度地图sdk的地图app开发系列博客第七篇代码仓库位置:https://github.com/YanhuiLu89/lmap.git上一篇 基于百度地图sdk的地图app开发(六)——路线规划因为本人是做C++开发,android和java都不熟,这方面知识有说错或者不好的习惯,欢迎赐较。官方参考文档:Android导航SDK一、工程配置1.1 在AndroidMainfest.xml中加入以下权限(指导文档里的权限比这多,前面几个权限在前面几篇文章里,使用百度地.

2021-05-30 12:37:12 5637 37

原创 基于百度地图sdk的地图app开发(六)——路线规划

这是基于百度地图sdk的地图app开发系列博客第五篇代码仓库位置:https://github.com/YanhuiLu89/lmap.git上一篇 基于百度地图sdk的地图app开发(五)——poi检索因为本人是做C++开发,android和java都不熟,这方面知识有说错或者不好的习惯,欢迎赐较。路线规划通俗讲,就是从A点到B点计算1条或多条路径。百度地图SDK支持步行路线规划、骑行路线规划、驾车路线规划、跨城公交路线规划、市内公交路线规划、室内路线规划。从官方指导文档看每一种路线.

2021-05-20 18:18:15 5523 21

原创 glfwCreateWindow返回NULL问题

opengl学习中遇到glfwCreateWindow返回空问题代码如下 int ret=glfwInit(); glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3); glfwWindowHint(GLEW_VERSION_MINOR, 3); glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE); GLFWwindow* window = glfwCreateW

2021-05-13 17:17:30 2145

原创 基于百度地图sdk的地图app开发(五)——poi检索

基于百度地图sdk的地图app开发(五)——导航与模拟导航

2021-05-01 17:13:41 2831 11

原创 基于百度地图sdk的地图app开发(三)——优化地图显示

这是基于百度地图sdk的地图app开发系列博客第三篇代码仓库位置:https://github.com/YanhuiLu89/lmap.git上一篇 基于百度地图sdk的地图app开发(二)——地图显示

2021-04-17 13:40:55 1202

原创 基于百度地图sdk的地图app开发(四)——显示地图定位

这是基于百度地图sdk的地图app开发系列博客第四篇代码仓库位置:https://github.com/YanhuiLu89/lmap.git上一篇 因为本人是做C++开发,android和java都不熟,这方面知识有说错或者不好的习惯,欢迎赐较。官方参考文档显示定位地图默认是在北京天安门位置,我们要把它定位到当前我们的实际位置。1 配置AndroidManifest.xml文件加入权限声明,如下<!-- 这个权限用于进行网络定位 --><us.

2021-04-17 13:38:53 2358 6

原创 我的QT Creator学习笔记(三十三)——Qt中连接与使用数据库

我的QT Creator学习笔记(三十三)——Qt中连接与使用数据库

2021-04-10 20:44:29 1199

原创 基于百度地图sdk的地图app开发(二)——地图显示

基于百度地图sdk的地图app开发(二)——地图显示

2021-04-09 19:46:45 1770 4

原创 基于百度地图sdk的地图app开发(一)——开发环境配置与sdk下载

基于百度地图sdk的地图app开发(一)——开发环境与sdk下载

2021-04-07 21:47:43 3080

原创 我的QT Creator学习笔记(三十二)——模型/视图编程之委托类

我的QT Creator学习笔记(三十)——模型/视图编程之委托类

2021-04-03 12:48:05 309

原创 我的QT Creator学习笔记(三十一)——模型/视图编程之视图类

我的QT Creator学习笔记(三十)——模型/视图编程之视图类

2021-03-28 18:39:32 495 1

原创 我的QT Creator学习笔记(三十)——模型/视图编程之模型类

Qt中的模型/视图架构就是用来实现大量数据的存储、处理及其显示的。模型/视图架构MVC(Model-View-Controller)是一种起源于Smalltalk的设计模式,经常用于创建用户界面。MVC包含了3个组件:模型(Model)是应用对象,用来表示数据;视图(View)是模型的用户界面,用来显示数据;控制(controller)定义了用户界面对用户输入的反应。模型/视图框架中的众多类可以分为3组:模型、视图和委托,它们之间使用信号和槽来实现通信:》当数据源的数据发生改变时,模型发出信

2021-03-27 22:03:57 442

原创 我的QT Creator学习笔记(二十九)——音频录制

可以使用QAudioRecorder类的audioInputs()来获取所有可用的音频输入设备名称,

2021-03-14 20:56:21 568

原创 我的QT Creator学习笔记(二十八)——使用Qt操作相机

一、使用到的类:1、QCameraInfo:用来查询系统当前可用的相机设备,其常用函数及其功能如下图2、QCamera:该类提供了操作相机设备的诸多接口,常用接口如下图 3、QCameraImageCapture:这是一个图像录制类,与QCamera配合可以进行拍照。使用capture()可以捕获图片并保存的文件,setEncodingSettings可以进行图像编码设置。4、QMediaRecorder类用来记录媒体内容,与QCamera一起使用可以进行视频录制。通过.

2021-03-14 17:55:03 1933 1

原创 我的QT Creator学习笔记(二十七)——播放视频

我的QT Creator学习笔记(二十六)——播放视频

2021-03-07 15:52:20 758 1

原创 我的QT Creator学习笔记(二十六)——播放音频QMediaPlayer和QSoundEffect

3D绘图效果没出来我的QT Creator学习笔记(二十五)——播放音频

2021-03-05 19:00:47 3113 1

Qt pop3接收邮件并下载附件程序

Qt pop3自动登陆邮箱接收邮件,并把邮件保存到数据库,附件下载到工程目录。

2019-04-30

空空如也

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

TA关注的人

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