【发布时间】:2024-01-16 04:18:01
【问题描述】:
我已经从 Python 迁移到 C++,只是想知道如何对向量(列表)对象所持有的值求和。例如,在python中,我可以使用下面的代码:
totalSum = 0
myList = [1,2,3,4,5]
for i in myList:
totalSum += i
print(totalSum)
// Output:
15
但是,我想学习在 C++ 中执行此操作的方法
totalSum = ""
myList = ["Hello", "World!"]
for i in myList:
totalSum += i
totalSum += " "
print(totalSum)
//Output:
Hello World!
而这个是给字符串组合的。
能否请您提供如何在 c++ 中执行此操作?
我在C++中试过下面的代码来测试,但是编译不成功:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
// A random list/vector here:
vector <double> v = {1, 2, 3, 4, 5};
// Declaring the final string to gather all the vector values:
int sum;
// Iterating through the vector
for (int i = 0; i < v.size(); i++) {
sum += v[i];
}
cout << sum;
return 0;
}
【问题讨论】:
-
你在寻找std::accumulate吗?
-
这也适用于字符串吗?
-
如果你能想出一些东西来描述积累/总结字符串的含义并为此提供合适的函子,那么当然。
-
为什么代码不能编译?你得到什么错误?
-
只是一个常规的 vs 调试器错误
标签: python c++ list vector sum