百科问答小站 logo
百科问答小站 font logo



C++的CRTP所带来的静态多态功能具体有什么用? 第1页

  

user avatar   haozhi-yang-41 网友的相关建议: 
      

我用过。

当时场景是这样的,有一段二进制格式流要解包,就是定长头+变长体的那种格式。在这些解包操作类的基类和子类之间,就用了这种方式。

当时主要的考虑就是省掉 vptr。这样,就可以直接把这些类都当做 pod 类型,直接在指定偏移拿某个类的指针做类型强转就可以直接得到一个实例了。这样就可以省掉构造函数和析构函数的开销,以及这两个函数执行过程中可能产生的内存拷贝。




  

相关话题

  为什么说 Java 比 C / C++ 慢? 
  c语言0xFFFF换成十进制不应该是65535吗? 
  C++ 的智能指针不就基本解决了野指针问题了吗?为什么还要吹捧rust的内存安全? 
  C++为何不允许在函数中直接传递数组? 
  C++中如何将string类型转换为int类型? 
  GCC 4 编译警告:warning: dereferencing type-punned pointer will break strict-aliasing rules 有什么比较好的解决办法? 
  C语言如何支持C++重载? 
  编译器是如何实现C/C++中的const的功能? 
  快奔四的人了,开始学C++,是否太迟了? 
  学习 C/C++ ,有什么书籍推荐? 

前一个讨论
windows最终会完全采用linux内核吗?
下一个讨论
如何看待章莹颖案与张扣扣案最终结果的巨大差异?





© 2025-05-15 - tinynew.org. All Rights Reserved.
© 2025-05-15 - tinynew.org. 保留所有权利