这与:
有关std::basic_string specialization和 Circumventing template specialization
我尝试了来自std::basic_string specialization的解决方案,但问题是CustomChar是wchar_t的typedef,我有重新定义(与std的特化相冲突)。当我不允许更改CustomChar typedef时,如何避免使用chart_traits?
答案 0 :(得分:0)
如果有已知的先前实例化,您可以使用Boost的/ C ++ 0x disable_if
来禁用,例如char
和wchar_t
。
答案 1 :(得分:0)
这是Charles Bailey提供的答案:
您仍然可以使用wchar_t作为std :: basic_string的charT模板参数来提供替代traits类(即std :: char_traits特化之外的其他东西)