accumulate()中这个话的理解
accumulate()
下图中为啥会出现编译错误怎么说的这么不条理阿,求大侠言简意赅的说下
[解决办法]
这翻译的……语序基本是英语语序
他的意思应该是,第三个参数必须是string类型,所以string("")是可以的,但是如果是""(也就是字符串字面值),那就是const char*类型,编译错误
[解决办法]
因为参数类型不匹配啊,要求是string你给了个const char*
[解决办法]
template <class InputIterator, class T>
T accumulate (InputIterator first, InputIterator last, T init);
accumulate要求T支持+操做,而char*/char const*不支持+,但是std::string是支持+的。
书比较嗦而已。