news 2026/7/7 2:53:15

类、结构体或枚举的数组-–-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/6 13:33:17

KMPlayer:全能媒体播放解决方案,支持3D/VR/360度沉浸式播放体验

KMPlayer作为一款久负盛名的多媒体播放软件&#xff0c;持续保持着在格式兼容性和播放体验方面的领先优势。这款源自韩国的播放器以其卓越的解码能力和用户友好的界面设计&#xff0c;成为处理多种媒体格式的理想选择&#xff0c;特别是其对新兴视频技术的支持表现突出。 获取…

作者头像 李华
网站建设 2026/7/7 18:02:50

USB 厂商ID与设备型号对照表

USB 厂商ID与设备型号对照表 这份数据源自全球广泛使用的 usb.ids 文件&#xff0c;由 Stephen J. Gowdy 维护&#xff0c;是识别 USB 设备厂商和产品型号的重要参考。它通过唯一的十六进制 ID 对每一家厂商&#xff08;Vendor ID&#xff09;及其旗下的具体设备&#xff08;Pr…

作者头像 李华
网站建设 2026/7/6 10:23:41

Qwen3-32B Docker镜像部署:5分钟跑起大模型

Qwen3-32B Docker镜像部署&#xff1a;5分钟跑起大模型 你有没有经历过这样的尴尬——项目到了关键节点&#xff0c;急需一个能理解复杂逻辑、写出高质量代码的大模型来辅助决策&#xff0c;结果试了几个开源方案&#xff0c;不是“上下文太短”就是“回答驴头不对马嘴”&…

作者头像 李华
网站建设 2026/7/7 11:45:14

AutoGPT入门到精通:核心功能与实践指南

AutoGPT&#xff1a;从概念到实战的自主智能体探索 在生成式AI席卷全球的今天&#xff0c;我们早已习惯了与ChatGPT这样的语言模型对话——问一个问题&#xff0c;得到一个回答。但如果你提出的是一个复杂目标&#xff0c;比如“帮我写一份竞品分析报告&#xff0c;并做成PPT发…

作者头像 李华
网站建设 2026/7/7 7:26:19

GSV1173@ACP#1173产品规格参数详解及产品应用分享

GSV1173 参数规格详解与产品应用总结一、参数规格详解&#xff08;一&#xff09;基础信息与核心定位GSV1173 是GScoolink推出的高性能、低功耗转换器&#xff0c;核心功能是实现 MIPI D-PHY CSI-2/DSI、LVDS VESA/JEIDA 信号到 Embedded DisplayPort&#xff08;eDP&#xff0…

作者头像 李华
网站建设 2026/7/7 15:55:36

价值投资中的智能家居语音控制系统分析

价值投资中的智能家居语音控制系统分析关键词&#xff1a;价值投资、智能家居、语音控制、人工智能、物联网、自然语言处理、投资分析摘要&#xff1a;本文从价值投资的角度深入分析智能家居语音控制系统这一新兴技术领域。我们将探讨该技术的核心原理、市场前景、竞争优势以及…

作者头像 李华