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



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

  

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

我用过。

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

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




  

相关话题

  C++1y又给C++增加了多少坑? 
  有人对 C++ 基本数据类型采用 int x{5}; 的方式进行初始化吗? 
  C++异常处理写的代码太丑怎么办? 
  C/C++ 数组的下标为何要从 0 开始,而不从 1 开始? 
  C++ 有提供像是 C 中 realloc() 这样的函数的新版本吗? 
  C 语言这些宏定义前面的 __extension__ 是什么意思? 
  c++怎么在1到n这些数中随机产生k(k<n)个?当然,k个数互不相等。有什么比较好的写法吗? 
  有哪些关于C++高性能服务器开发的高质量博客? 
  C++,全局变量如果用new了,需要delete吗? 
  怎能给孩子讲用c++解决鸡兔同笼问题,百钱买百鸡等问题,也就是c++的for循环嵌套枚举? 

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





© 2025-04-12 - tinynew.org. All Rights Reserved.
© 2025-04-12 - tinynew.org. 保留所有权利