C ++ std :: basic_string / char_traits特化

时间:2011-07-01 13:05:26

标签: c++ string templates stdstring char-traits

这与:

有关

std::basic_string specializationCircumventing template specialization

我尝试了来自std::basic_string specialization的解决方案,但问题是CustomChar是wchar_t的typedef,我有重新定义(与std的特化相冲突)。当我不允许更改CustomChar typedef时,如何避免使用chart_traits?

2 个答案:

答案 0 :(得分:0)

如果有已知的先前实例化,您可以使用Boost的/ C ++ 0x disable_if来禁用,例如charwchar_t

答案 1 :(得分:0)

这是Charles Bailey提供的答案:

您仍然可以使用wchar_t作为std :: basic_string的charT模板参数来提供替代traits类(即std :: char_traits特化之外的其他东西)