(C++)部分特化:在模板编程中,只对模板参数的一部分形式进行更具体的匹配与实现,使编译器在不同类型/形状的参数下选择更合适的模板版本。(相对于“完全特化”只针对某个完全确定的参数组合。)
/ˈpɑːrʃəl ˌspɛʃələˈzeɪʃən/
Partial specialization lets the compiler pick a better template for pointers.
部分特化让编译器能为指针类型选择更合适的模板。
By using partial specialization, the library provides an optimized implementation for vector<bool> while keeping the general template for other types.
通过部分特化,库可以为 vector<bool> 提供优化实现,同时对其他类型仍使用通用模板。
partial 来自拉丁语 partialis(“部分的”),强调“不是全部、只是一部分”;specialization 源自 special(“特殊的”)与后缀 -ization(“……化/过程”),合起来表示“使之更特殊/更具体”。在 C++ 语境中,该短语指“把模板在某些参数形态上变得更具体”。