- 博客(1671)
- 资源 (8)
- 收藏
- 关注
原创 someip topic和 dds的 topic 区别, 发布订阅的区别
特性SOME/IPDDSTopic概念不直接存在,通过服务和事件表达明确定义,作为数据发布的主题适用场景汽车电子,ECU间通信分布式系统,尤其是对实时性和可靠性有较高要求的应用发布/订阅机制基于服务的事件通知完全解耦的发布/订阅,支持丰富的QoS选项两者虽然都支持发布/订阅模式,但它们的设计初衷和服务对象有所不同。SOME/IP更适合于嵌入式环境下的轻量级通信,而DDS则提供了更为强大和灵活的数据分发能力,适用于更广泛的企业级应用。
2025-07-15 16:25:56
346
原创 人工智能ai的基础理论知识
知识模块核心内容数学基础线性代数、概率统计、微积分、信息论编程基础Python、数据结构与算法、工程实现AI 理论搜索、推理、机器学习、深度学习应用方向NLP、CV、强化学习、机器人扩展方向大模型、伦理安全、部署优化如果你是学生或刚入门者,建议从Python + 数学基础 + 机器学习入门开始,逐步深入到深度学习和具体应用场景。如果你告诉我你的背景(比如是否是学生、工程师、转行者),我可以为你定制一份详细的学习计划 👇。
2025-07-15 09:44:46
896
原创 单向链表反转 如何实现
掌握单向链表反转是理解指针操作的基础,建议手写实现并测试边界条件(如空链表、单节点链表)。单向链表反转是数据结构中的经典问题,在面试和实际开发中经常遇到。(包括递归和迭代),以 Go 语言为例。
2025-07-12 21:06:53
316
原创 c++ 编译链接时 报错找不到 某个函数,如何排查?
通过以上系统化排查,90%以上的链接错误都能快速定位解决。若问题仍然存在,可提供具体的函数名和构建环境信息进一步分析。
2025-07-11 17:10:37
338
原创 mysql索引底层原理
理解MySQL索引的底层原理对于数据库性能优化至关重要。通过选择合适的索引类型、优化索引结构和利用覆盖索引等技术,可以显著提高查询效率和数据库的整体性能。在实践中,定期分析和优化索引策略是维护高性能数据库的关键步骤之一。
2025-07-10 21:13:27
406
原创 mysql如何选择最适合你的存储引擎呢?
InnoDB存储引擎除了有效的降低由于删除和更新导致的锁定,还可以确保事务的完整提交(commit)和回滚(rollback),对于类似计费系统或者财务系统等对数据准确性要求高的系统,InnoDB是比较合适的选择。◆ Other:其他存储引擎包括CSV(引用由逗号隔开的用作数据库表的文件),Blackhole(用于临时禁止对数据库的应用程序输入),以及Example引擎(可为快速创建定制的插件式存储引擎提供帮助)。◆ BDB:可替代InnoDB的事务引擎,支持COMMIT、ROLLBACK和其他事务特性。
2025-07-10 20:39:40
255
原创 C++函数签名
函数签名的重要性体现在函数重载和模板实例化中。参数的名字 不影响 签名(如 int func(int a) 和 int func(int b) 是同一签名)。如 void func() &(左值引用限定)和 void func() &&(右值引用限定)是不同签名。如 void func() noexcept 和 void func() 是不同签名。例如:int func() 和 double func() 无法共存(编译器报错)。成员函数属于特定类(如 MyClass::method)。
2025-07-10 19:20:13
306
原创 zookeeper etcd区别
ZooKeeper基于ZAB协议实现分布式协调,采用树形数据结构和临时节点特性,适合传统分布式系统;而etcd基于Raft协议,以高性能键值对存储为核心,专为云原生场景优化,是Kubernetes等容器编排系统的默认存储组件。
2025-07-10 10:49:47
425
原创 Go 延迟调用 defer 用法详解
和defer类似的有java的finally和C++的析构函数,这些语句一般是一定会执行的(某些特殊情况后文会提到),不过析构函数析构的是对象,而defer后面一般跟函数或方法。defer (延迟调用)是 Go语言中的一个关键字,一般用于释放资源和连接、关闭文件、释放锁等。
2025-07-09 21:12:15
358
原创 【C++ 内存管理】静态分配和动态分配
②内存区域:堆区或者栈区(栈可以通过函数_alloca进行动态分配,不过注意,所分配空间不能通过free或delete进行释放)。①分配时机:运行时动态申请(如 malloc, new)和释放(如 free, delete)。④大小可变:内存大小在运行时确定,可动态调整(如 realloc)。在编译阶段确定内存大小和生命周期,由编译器自动分配和释放。②内存区域:数据段(全局变量或者静态变量)和栈区。④大小固定:内存大小在编译时已知,不可动态调整。①分配时机:程序启动时分配,程序结束时释放。
2025-07-06 23:31:35
220
原创 std::forward作用
是C++11引入的函数模板,主要用于(perfect forwarding),即保持参数原有的左值(lvalue)或右值(rvalue)引用属性,解决模板参数传递中的值类别丢失问题。12。
2025-07-06 23:22:22
510
原创 golang 协程 如何中断和恢复
在 Go 语言中,协程(也称为 goroutine)是通过go关键字启动的轻量级线程。由于 goroutine 的调度是由 Go 运行时管理的,直接停止一个正在执行的 goroutine 是不可能的,这与操作系统线程不同。但是,你可以通过一些策略来实现“中断”和“恢复”的行为,尽管这不是传统意义上的停止和恢复。
2025-07-06 23:11:24
312
原创 栈溢出的原因及解决办法, 堆栈
在编程中,栈是一种用于存储临时变量和函数调用信息的内存区域。栈溢出是指当程序向栈中压入过多数据时,超出了栈的容量限制,导致数据覆盖栈帧的情况。栈溢出可能会导致程序崩溃、安全漏洞以及其他意外行为。
2025-07-05 22:18:04
853
原创 error: invalid new-expression of abstract class type ‘testing::NiceMock<MockProxy>’ 146 | { ::new
NiceMock<...>:这是 Google Mock 提供的一个包装类,用于将 mock 类的行为设为“nice”,即对未预期的调用不报错。✅ MockProxy 是一个正常的 mock 类(可能继承自 testing::Test 或使用了 MOCK_METHOD 宏)abstract class type:表示你试图 new 一个抽象类(含有纯虚函数的类)。mock 类中某些方法没有被正确实现(通常是遗漏了 MOCK_METHOD 的定义)MockProxy:你的 mock 类名。
2025-07-03 15:25:31
154
原创 C++静态成员函数访问非静态成员的四种方法
这样在你回调函数的时候,你可以通过这个来让本身不能访问成员非静态变量的静态函数(太拗口)来访问非静态成员变量。有一个很取巧的办法,就是。
2025-07-02 13:58:51
203
原创 error: ‘using element_type = class xxxx::abc’ {aka ‘class xxxxx::abc’} has no member named ‘gmock_te
error: ‘using element_type = class xxxx::abc’ {aka ‘class xxxxx::abc’} has no member named ‘gmock_test’; did you mean ‘test’?报这个错误是因为 用的是父类的指针,而父类没有这个成员函数.
2025-06-26 21:26:18
106
原创 cmake include 写法
message(STATUS "配置目标: ${target}")message(STATUS "目标类型: ${target_type}")print_target(mylib) # 调用自定义函数。
2025-06-26 15:08:31
389
原创 libnids 入侵检测
1 2 Libnids的核心功能与特性 网络流量捕获与分析。 3 5 攻击行为检测:识别TCP端口扫描、IP分片攻击等潜在威胁。2 3 开发与部署 依赖环境:需配合Libpcap(数据包捕获)和Libnet(数据包构造)使用,支持类Unix系统及Windows(通过WinPcap适配)。2 3 TCP数据流重组。2 4 入侵检测支持。2 4 典型应用场景 网络嗅探与协议分析:捕获并解析网络通信内容,例如提取明文传输的账号密码。
2025-06-25 15:37:52
151
原创 gtest testing::Mock::VerifyAndClear
如果你在一个自定义的 mock 类中使用了,你需要确保你的类继承自 Google Mock 的Mock类,并正确实现了该方法。public:// 自定义实现,确保已正确实现此方法。
2025-06-23 11:10:55
224
原创 git rebase abort 命令详解
记住,作为 Comate,我一直在这里为你提供编程和技术问题的帮助。如果你有任何疑问或需要进一步的解释,请随时告诉我。简而言之,它允许你放弃一个不成功的或正在进行的。操作后,可能会遇到各种冲突或问题,导致你无法继续或不想继续这个。操作,并将工作目录和暂存区恢复到。操作,并将工作目录和暂存区恢复到。命令用于取消当前正在进行的。这个命令会立即取消当前的。
2025-06-16 10:26:06
469
原创 AUTOSAR自适应平台Persistency模块(一)
或者通过使用OpenKeyValueStorage和OpenFileStorage可以分别在同一个Key Value存储或文件存储的独立线程中调用。persistency功能集群提供了对底层文件系统的自适应应用程序的访问,存在两个原因:(1)persistency功能集群使平台对存储实施访问控制和管理。persistency为自适应平台的应用程序和其他功能集群提供了将信息存储于Adaptive Machine的非易失性存储器中的机制。* Persistency可以保证存储数据的完整性。
2025-05-26 10:56:21
297
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人