一个关于赋值表达式作为函数参数的问题
有代码的函数定义是这样写的,
void stringtok(Container &container, std::string const &in,
const char* const delimiters = " \t\n")
我对照着仿了一个函数,Test_para(char* aa, int aaa= 2)
这样写法表示什么意思?很少看到这样写的
如下是完整代码:template <typename Container>
void stringtok(Container &container, std::string const &in,
const char* const delimiters = " \t\n")
{
const std::string::size_type len = in.length();
std::string::size_type i = 0;
while ( i < len )
{
// eat leading whitespace
i = in.find_first_not_of(delimiters, i);
if (i == std::string::npos) return; // nothing left but white space
// find the end of the token
std::string::size_type j = in.find_first_of (delimiters, i);
// push token
container.push_back ((j == std::string::npos) ? in.substr(i)
: in.substr(i, j-i));
if (j == std::string::npos) return;
// set up for next loop
i = j + 1;
}