标签: generic-programming
与该标签相关的所有文章 "generic-programming".
-
C++ STL:迭代器如何解耦算法与容器
STL 的灵魂是 Alexander Stepanov 的泛型编程思想:算法只依赖迭代器,容器只提供 begin/end——N 个算法 × M 个容器从需要 N×M 份代码变成 N+M 份。vector 扩容用 moveifnoexcept 保证强异常安全,std::sort 用 introsort 保证最坏 O(n log n),unorderedmap 因 ABI 包袱锁死为链地址法(比 absl::flathash_map 慢 2-3 倍)——这些实现选择背后都有性能与兼容性的深层权衡。