- 博客(1622)
- 资源 (8)
- 收藏
- 关注
原创 windows 10 做服务器 其他电脑无法访问,怎么回事?
一般我们会先打开win10自己的防火墙策略,但是容易忽略 电脑直接 路由器上的防火墙,此时也需要查看一下,可以尝试先关闭路由器防火墙,如果可以了,再 设置路由器上的防火墙规则。
2025-05-17 20:19:30
243
原创 TLV格式
TLV格式将数据划分为三个主要部分:Tag(标签)、Length(长度)和Value(值)。这种方式在电信、计算机网络、智能卡、物联网等领域被广泛应用,尤其在那些需要高效、灵活且可扩展的数据编码方案的领域12。
2025-05-15 13:39:27
316
原创 TTPoE协议,tcp
Tesla在TTPoE的硬件实现中,采用了类似CPU的设计理念,特别是在数据包处理上,采用了类似于指令重排序缓冲区(reorder buffer)中的“指令退休”机制。此外,TTPoE仍然保留了TCP协议中通过丢包来控制拥塞的思路,但由于其固定窗口的设计,TTPoE不需要像TCP那样频繁地调整窗口大小,从而减少了计算和管理的复杂性。为此,TTPoE采用了一种固定的拥塞窗口机制,即通过硬件在SRAM缓冲区中记录已发送的数据,缓冲区的大小直接决定了拥塞窗口的大小。重要特性是其设计完全由硬件实现,
2025-05-14 10:12:54
334
原创 hab机制
是一种用于高通平台上的主机与虚拟机之间的通信机制,主要用于实现宿主操作系统(host OS)与虚拟机操作系统(guest OS)之间的数据共享和通信。HAB机制允许虚拟机访问宿主操作系统管理的硬件资源,例如输入设备、摄像头等。
2025-05-13 17:50:40
202
原创 powershell下载
Release v7.5.1 Release of PowerShell · PowerShell/PowerShell · GitHub
2025-05-12 07:44:58
107
原创 git 工具
Git教程 Git Bash详细教程-CSDN博客Download – TortoiseGit – Windows Shell Interface to Git
2025-04-26 22:45:05
574
原创 功能安全与C++异常处理
你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:撤销:Ctrl/Command + Z重做:Ctrl/Command + Y加粗:Ctrl/Command + B斜体:Ctrl/Command + I标题:Ctrl/Command + S
2025-04-21 10:10:52
663
原创 功能安全和c++异常处理
在功能安全(Functional Safety)领域,特别是遵循ISO 26262(汽车)或IEC 61508(工业)等标准时,C++的异常处理通常是被限制或禁止的。1. **确定性行为**:功能安全系统要求完全确定性的行为,而异常破坏了代码的执行流。3. **资源消耗**:异常机制会增加代码大小和运行时开销。5. **标准限制**:许多安全标准建议避免或限制使用异常。2. **实时性**:异常处理可能导致不可预测的时间延迟。4. **验证困难**:异常路径难以全面测试和验证。### 1. 返回错误码。
2025-04-20 06:41:02
355
原创 std::map gdb调试ok ,直接运行会crash
在使用std::map:在调试模式下,某些变量可能因为调试工具(如 GDB)的干预而自动初始化,而在直接运行时则可能因为没有初始化而导致未定义行为。:在调试过程中,可能无意中改变了某些内存区域(例如通过错误的指针操作),这些改动没有被调试器捕获,但在程序运行时导致崩溃。:编译器在优化代码时可能会改变变量的存储方式或执行路径,导致原本在某些编译设置下表现良好的代码在优化后出现问题。:如果std::map是,而其中一个线程在修改std::map的同时另一个线程在访问它,就可能引发竞态条件,导致运行时崩溃。
2025-04-16 20:24:08
164
原创 ubuntu系统使用微信切换输入法有时候很卡
ubuntu系统使用微信切换输入法有时候很卡,原因是fcitx的cpu很高导致,此时需要杀掉fcitx进程即可。
2025-04-11 14:10:29
94
原创 error: no matching function for call to ‘std::map<std::__cxx11::basic_strin
在 C++ 中,当你遇到错误 "no matching function for call to ‘std::map<std::__cxx11::basic_string’" 这类错误时,通常是因为你尝试以错误的方式插入或访问std::map中的元素。
2025-04-10 15:51:51
243
原创 GoogleTest, gtest之 EXPECT_CALL,MOCK_METHOD
ON_CALL只定义当一个mock函数被调用时执行什么动作,不会定义任何期望;EXPECT_CALL 不止定义行为,而且定义mock以何种期望的形式被调用(包括被调用的顺序,次数等)。如果不期望mock函数被调用,可与使用EXPECT_CALL(…)),但是在测试程序中却调用了x.Y(…)),但是却没有调用x.Y(…unexpected的调用会报error,但是Uninteresting不是错误,只是一个警告。不感兴趣(Uninteresting)和不期望(Unexpected)的调用的理解。
2025-04-10 13:24:12
222
原创 参数标定,XCP学习】A2L文件简介
的描述文件,基于文本格式,描述ECU的通信等相关的参数,以及标定,观测变量的地址以及物理值计算公式等等。A2L 文件中的信息允许 XCP 主站通过 XCP 连接与从站模块通信。格式化的文本文件包含事件和测量定义以及其他配置信息,用于采集和激励数据以及执行其他函数。
2025-04-10 09:47:37
247
原创 C++中巧用#define访问类的私有成员
但是,这是一个非正规的手段,它将破坏类的所有封装性。而C++中的#define的存在也是为了跟C兼容。所以只有在非常特殊的情况下,才会用这种非正规方法访问类的私有或保护成员。我们知道,类的私有成员在类的外部是不能被访问的。但是,我们并不是没有办法来访问类的私有成员。
2025-04-03 16:35:16
153
原创 c++ [[fallthrough]] 属性
1:[[fallthrough]] 属性:这个属性用于在switch语句中。通常,当switch语句的一个case执行完毕后,会自动跳转到switch语句的末尾,除非存在break语句。如果你想要故意从一个case“落入”(fall through)到下一个case,可以使用[[fallthrough]]属性来告诉编译器这是故意的行为,以避免编译器发出警告。
2025-04-02 19:16:28
127
原创 static_cast 比强转 好在哪儿
:在C++标准库的容器中,如std::vector、std::list等,static_cast可以用于执行一些安全的类型转换操作,例如将一个std::string转换为const char*,或者将一个整数类型的迭代器转换为另一个整数类型的迭代器1。:static_cast可以用于指针和引用的类型转换,而C语言中的类型转换只能用于数值类型之间的转换。:在类层次结构中,static_cast可以用于将一个基类指针或引用转换为派生类指针或引用。
2025-03-26 13:48:15
206
原创 ultraiso制作u盘启动
UltraISO是一款功能强大的工具,可以帮助用户将ISO镜像文件写入U盘,从而制作成可启动的系统安装盘。通过以上步骤,你可以轻松使用UltraISO制作一个可启动的U盘系统安装盘,适用于安装或修复操作系统。
2025-03-23 22:51:12
1982
原创 好的服务设计怎么做?15个原则.服务的归一化设计原则是什么?
服务的归一化设计原则旨在通过标准化和规范化的设计方法,提高系统的可维护性、扩展性和可靠性。服务的归一化设计原则是指在设计和实现分布式系统中的服务时,遵循一系列标准化和最佳实践,以确保系统的可维护性、扩展性和可靠性。定义:服务应具备良好的监控和日志记录能力,以便及时发现问题和进行故障排查。定义:所有服务应提供一致的接口规范,包括请求和响应格式、错误处理机制等。定义:服务不应依赖于客户端的状态信息,每次请求应包含所有必要的信息。定义:使用负载均衡技术分发请求,确保服务的高可用性和性能。
2025-03-18 20:09:06
284
原创 qnx使用valgrind, 内存
Invalid free() / delete / delete[] / realloc() //申请释放不匹配。Use of uninitialised value of size //使用未初始化的指针或者变量。Source and destination overlap //内存踩踏。Invalid write of size 1 //内存越界或者数组越界。内存常见的错误代表如下。改变tmp目录位置.
2025-03-18 17:18:56
195
原创 qnx error “Bad file descriptor“ with errno 9
fork、system这种调用” 和 “本进程里其他会造成文件描述符变化的操作,类似open/close” 同时执行的时候 会产生这个错误。fork/system...和 open/close 给这两种大的类型加锁,面同时执行的地方 加锁。
2025-03-18 17:10:56
127
原创 解决qnx调试core文件堆栈是问号
到一个目录比如:/home/xxx, 或者根目录/, 根据报错信息创建对应的目录.home/xxx, 再执行 bt,
2025-03-18 10:55:40
94
原创 C++中=delete的巧妙用法
这个特性在很多场合都非常有用,比如当我们想要阻止一个类被复制或者赋值时。来显式地禁止编译器自动生成某些函数。类的复制构造函数和赋值运算符。这样,如果我们试图复制一个。在C++11中,我们可以在函数原型后面添加。是一个新的特性,它允许我们显式地禁止。1.1.2 在函数原型中使用。在这个例子中,我们使用。对象,编译器就会报错。
2025-03-11 10:43:20
181
原创 C++学习,# 和 ## 运算符
运算符用于将其后的宏参数转换为一个字符串常量。如果宏参数是一个宏标识符,则它会被转换成用双引号括起来的该标识符的字符串表示。## 运算符用于在宏扩展时连接两个标记(token)。运算符,它们主要在宏定义中使用,用于字符串化和标记粘贴(token pasting)操作。# 运算符生成的字符串不包括任何周围的引号,但它确实会生成一个字符串字面量。使用 ## 运算符时,如果任一操作数在宏扩展后为空,则行为是未定义的。这两个运算符是预处理指令的一部分,它们在编译之前由预处理器处理。## 运算符:标记粘贴。
2025-03-11 10:12:02
351
原创 c++ 返回引用
在C++中,返回引用是一种常见的做法,特别是在需要返回大型对象时,以避免不必要的复制,从而提高程序的效率。返回引用通常有两种情况:返回局部变量的引用和返回成员变量的引用。下面分别讨论这两种情况以及如何安全地实现它们。
2025-03-10 21:07:54
954
原创 C++关键字deprecated
利用 deprecated 声明,可以将函数重载的特殊形式指定为已弃用,而 pragma 形式适用于函数名称的所有重载形式。利用 deprecated 声明,可以指定在编译时显示的消息。该消息的文本可以来自宏。只能使用 deprecated pragma 将宏标记为已弃用。指示声明有此属性的名字或实体被弃用,即允许但因故不鼓励使用。
2025-03-07 16:57:16
111
原创 C++之thread_local变量
线程局部存储(Thread Local Storage,TLS)是一种存储期(storage duration),对象的存储是在线程开始时分配,线程结束时回收,每个线程有该对象自己的实例;如果类的成员函数内定义了 thread_local 变量,则对于同一个线程内的该类的多个对象都会共享一个变量实例,并且只会在第一次执行这个成员函数时初始化这个变量实例。thread_local 是 C++11 为线程安全引进的变量声明符。thread_local 一般用于需要保证线程安全的函数中。
2025-03-06 19:29:35
188
原创 c++雅兰亭库 (yalantinglibs) 介绍及使用(序列化、json和结构体转换、协程
它是阿里开源的一个现代C++基础工具库的集合, 现在包括 struct_pack, struct_json, struct_xml, struct_yaml, struct_pb, easylog, coro_rpc, coro_io, coro_http 和 async_simple等功能, 也一直在持续优化并添加更多的新功能。yaLanTingLibs 的目标::为C++开发者提供高性能,极度易用的现代C++基础工具库, 帮助用户构建高性能的现代C++应用。雅兰亭库(yalantinglibs)介绍。
2025-03-06 14:23:49
250
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人