当调用字符串相关的函数时,开发人员通过会在程序中使用一些常量。假设有这样的一个函数:trim_spaces ,这一函数可以把一个字符串的前面和后尾的空格去掉,我们可以把这些空格当成以下的字符:" f"。
所以,在使用常量字符串字面值(字面值即为赋给常量的值,在本文中为" f")的时候,开发人员通常会碰到很多问题。这些问题可以总结如下:
现在,让我们看看这些问题的解决方法。这是一种通用的解决方法,在字符串常量字面值处理的情况下都能适用,比如:
可以使用以下的代码:
template< class CharType> std::basic_string< CharType> trim_spaces( const std::basic_string< CharType> & str) { static std::basic_string< CharType> strSpaces = CONST_STR( CharType, " f"); // }
微软嵌入式产品总监谈WEC 7的7大
《边看边读》第14期:读《Java加