当前位置: 首页 > news >正文

Urho3D 容器类型

Urho3D实现了自己的字符串类型和模板容器,而不是使用STL。其基本原理如下:

  • 在某些情况下提高了性能,例如使用PODVector类时。
  • 保证字符串和容器的二进制大小,以允许例如嵌入Variant对象内。
  • 减少了编译时间。
  • 直接命名和实现,有助于调试和分析。
  • 可以添加方便的成员函数,例如 String::Split()或Vector::Compact().。
  • 与其他类的一致性,请参见编码约定。

有问题的类是String、Vector、PODVector、List、HashSet和HashMap。PODVector仅在向量的元素不需要构造或破坏并且可以使用块内存副本移动时使用。

列表、集合和映射类在内部使用固定大小的分配器。应用程序也可以通过使用过程函数AllocatorInitialize()、AllocatorUninitialize(),AllocatorReserve()和AllocatorFree(),或通过模板类Allocator使用。

在脚本中,String类按原样公开。模板容器不能直接公开给脚本,而是存在一个模板Array类型,其行为类似于Vector,但不公开迭代器。此外,VariantMap是可用的,它是HashMap<StringHash,Variant>。

C++11功能

聚合初始值设定项:

VariantMap parameters = { {"Key1", "Value1"}, {"Key2", "Value2"} };

循环的范围基数:

for (auto&& item: container)

{

}

http://www.lryc.cn/news/4480.html

相关文章:

  • C语言学习笔记(四): 循环结构程序设计
  • 02 OpenCV图像通道处理
  • 微信小程序图书馆座位预约管理系统
  • 有限元分析学习一
  • android avb2.0 总结
  • 聊天机器人-意图识别类,开源库推荐
  • Java 标识符以及修饰符
  • 封装、继承、Super、重写、多态instanceof类型转换的使用以及个人见解
  • day13_面向对象的三大特征之一(封装)
  • 越界访问数组
  • 软件设计(十)--计算机系统知识
  • 【不知道是啥】浅保存哈
  • 2021 WAIC 世界人工智能大会参会总结
  • ThingsBoard-实现定时任务调度器批量RPC
  • MySQL数据库调优————数据库调优维度及测试数据准备
  • 电子货架标签多种固定方式
  • 基于JavaEE的智能化跨境电子商务平台的设计
  • C语言学习笔记(二): 简单的C程序设计
  • 十、STM32端口复用重映射
  • 【C++1】函数重载,类和对象,引用,string类,vector容器,类继承和多态,/socket,进程信号
  • Spring基础知识
  • proxy代理与reflect反射
  • 机器视觉 多模态学习11篇经典论文代码以及解读
  • Redis过期删除策略
  • 数据流分析之def-use链分析
  • 【0175】【内存上下文】如何利用context_freelists[]来彻底释放MemoryContext中分配的所有内存(8 - 2)
  • Redis实战—黑马点评(一) 登录篇
  • 建造者模式-搭建Qt窗口案例
  • *from . import _imaging as core : ImportError: DLL load failed: 找不到指定的模块
  • 关于尚硅谷Hadoop-报错解决方案日志