请帮助我使用以下代码。我需要将字符串长度添加到向量中。我不知道如何通过提升来实现它。到目前为止,我最好的想法是:
boost::bind(add2Vect, boost::ref(lengths), L::_1)
其中 add2Vect 是一个简单的函数,它接受一个向量、一个字符串并将字符串的长度添加到向量中。L 只是 boost::lambda 的简写
但是这个解决方案很糟糕,因为我必须创建一个离散函数。这不是 lambdas 应该做的。
编码:
vector<string> strings;
strings.push_back("Boost");
strings.push_back("C++");
strings.push_back("Libraries");
vector<int> lengths;
for_each(strings.begin(), strings.end(),
// add lengths of strings to the vector 'lengths'
);
for_each(lengths.begin(), lengths.end(),
cout << L::_1 << " "
);