自学内容网 自学内容网

组件式开发感想一

参考文档:
https://preshing.com/20180116/a-primitive-reflection-system-in-cpp-part-1/

反射和组件开发
组件的生命周期如何通过反射去控制
组件的添加和删除如何和反射构成关系
组件之间的层次结构

对这个问题的深刻理解需要去研究entt库和rttr反射和mirror 反射ET
//组件系统
//反射添加组件
AddComponent(std::string component_name);
RemoveComponet(std::string component_name);
template
AddComponent();
template
RemoveComponent();

//层次结构
template
AddChild()
template
DelChild();

我们知道组件或者插件有生命周期
Awake()
Update()
Destory();
在这里插入图片描述

我们是否可以将这些生命周期的控制器注册起来
AddComponent 和 RemoveComponent 的时候使用

本质上只需要一个注册器,生成器 将组件的构造器,销毁器,和生命周期函数注册至给定的结构体,要可扩展并且,
事件响应器

如果基于插件开发
每个插件的也有自己的生命周期函数
LoadFromDB
SaveToDB
Awake
Update
Destroy
这些函数用宏也好静态函数也好 怎么把这些闭包全部加入到这些
对应的容器里面进去 这就是组件方式的问题


原文地址:https://blog.csdn.net/weixin_43401039/article/details/140399571

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!