news 2026/7/2 3:56:06

类、结构体或枚举的数组-–-behaviac

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
类、结构体或枚举的数组-–-behaviac

原文

对于C#版,类型信息不支持[]类型的数组,只支持List<***>类型的数组。

对于C++版,需要按照如下方式进行注册:

基本类型(bool、int、float、char、sbyte、ubyte等)的数组可以直接使用,但当使用到其他自定义类型数组的时候,需要添加特殊的宏和代码,否则运行时可能会有错误(如果没有使用到相应的操作,则没有错误):

  • 在.h的头文件里添加如下所示的宏,但需放在任意namespace之外:
BEHAVIAC_DECLARE_TYPE_VECTOR_HANDLER(TNS::ST::PER::WRK::kEmployee);
  • 在初始化的代码里添加如下所示的注册代码:
behaviac::TypeRegister::Register<TNS::ST::PER::WRK::kEmployee>(" TNS::ST::PER::WRK::kEmployee");
  • 在结束代码里添加如下所示的反注册代码:
behaviac::TypeRegister::UnRegister<TNS::ST::PER::WRK::kEmployee>(" TNS::ST::PER::WRK::kEmployee");

更多细节可以参考behaviac组件C++源码中附带的UnitTestTypes.h文件中的结构体kEmployee。

  • Agent及其子类的数组

    当涉及behaviac::Agent或是其子类的时候,仅支持其指针类型即behaviac::Agent*SubclassAgent*SubclassAgentbehaviac::Agent的一个子类)。

    behaviac::Agent*vector<behaviac::Agent*>类型直接被支持,不需要做什么额外的工作,其任何子类SubclassAgent*也直接被支持。

    但是需要支持vector<SubclassAgent*>的时候,则需要在.h文件里添加如下所示的宏,但需放在任意namespace之外:

BEHAVIAC_DECLARE_TYPE_VECTOR_HANDLER(SubclassAgent*);

在初始化和结束的时候分别注册和反注册:

behaviac::Agent::Register<SubclassAgent>();behaviac::Agent::UnRegister<SubclassAgent>();

更多细节可以参考behaviac组件C++源码中附带的EmployeeParTestAgent.h文件中的类EmployeeParTestAgent。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/1 19:46:50

汽车EDI: Knorr-Bremse EDI 需求分析

Knorr-Bremse AG 是一家总部位于德国慕尼黑的全球领先工业企业&#xff0c;成立于 1905 年&#xff0c;主要专注于为 铁路车辆和商用车辆&#xff08;如卡车、公交车等&#xff09;制造制动系统及安全关键电子/机械系统。公司致力于提升道路和轨道交通的安全性、效率和可持续性…

作者头像 李华
网站建设 2026/7/2 1:55:54

LLaMA-Factory微调实战:从环境到训练全指南

LLaMA-Factory微调实战&#xff1a;从环境到训练全指南 在当前大模型技术飞速发展的背景下&#xff0c;如何将通用语言模型精准适配到具体业务场景&#xff0c;已成为开发者面临的核心挑战。尽管像 Llama、Qwen、Baichuan 等开源模型提供了强大的基础能力&#xff0c;但若未经定…

作者头像 李华
网站建设 2026/7/2 1:29:57

Excalidraw拖拽与缩放技术深度解析

Excalidraw拖拽与缩放技术深度解析 在现代协作型白板工具中&#xff0c;用户对交互流畅性的要求早已超越“能用”层面。当团队成员同时在一张无限画布上头脑风暴、调整架构图或绘制原型时&#xff0c;哪怕是一次轻微的卡顿、一次错位的拖动&#xff0c;都可能打断思维节奏。Exc…

作者头像 李华
网站建设 2026/7/2 0:28:24

实测3款论文降ai神器,手动+工具一键搞定降AIGC率!

最近毕业季&#xff0c;后台私信简直要炸了。很多同学都在哭诉&#xff1a;明明是自己一个字一个字码出来的论文&#xff0c;结果aigc降重检测结果竟然高达50%甚至70%以上。别慌&#xff0c;这其实是很多学生和研究者都会遇到的普遍问题。只要搞懂了原理&#xff0c;掌握正确的…

作者头像 李华
网站建设 2026/7/1 20:05:16

GNSS 形变监测系统:扼流圈 GNSS 监测站

提问&#xff1a;“北斗 GPS 双模定位 差分 RTK 技术”&#xff0c;具体精度能达到多少?对边坡、大坝监测来说意味着什么?​小助手支招&#xff1a;毫米级精准捕捉&#xff0c;隐患早发现早处置!系统通过北斗、GPS 多卫星系统融合定位&#xff0c;搭配差分 RTK 技术(基准站…

作者头像 李华
网站建设 2026/7/2 0:37:47

Java集合-Set讲解

目录一、集合框架层次结构二、Collection集合1、Set集合1、HashSet2、LinkedHashSet3、TreeSet4、ConcurrentSkipListSet5、CopyOnWriteArraySetJava 集合框架&#xff08;Collections Framework&#xff09;是 Java 中用于 存储和操作数据组的重要架构。它提供了一组接口、实现…

作者头像 李华