11 2024 档案
摘要:std::string的底层实现 std::string的底层到底是如何实现的呢? 其实在std::string的历史中,出现过几种不同的方式。 可以从一个简单的问题来探索,一个std::string对象占据的内存空间有多大,即sizeof(std::string)的值为多大?在不同的编译器(VC+
阅读全文
摘要:PIMPL是指pointer to implementation,又称作“编译防火墙”,是一种减少代码依赖和编译时间的C++编程技巧,其基本思想是将一个外部可见类的实现细节(一般是通过私有的非虚成员)放在一个单独的实现类中,在可见类中通过一个私有指针来间接访问该类型。
阅读全文