两个std::vector double相减
时间: 2024-08-16 12:04:10 浏览: 95
Vetores:矢量数据的抽象类型
在C++中,如果你想从一个`std::vector<double>`中减去另一个等大小的向量,你需要创建一个新的`std::vector<double>`来存储结果。这里是一个基本的示例:
```cpp
#include <iostream>
#include <vector>
int main() {
std::vector<double> vectorA = {1.0, 2.0, 3.0, 4.0, 5.0};
std::vector<double> vectorB = {0.5, 1.5, 2.5, 3.5, 4.5};
// 检查向量是否同长度
if (vectorA.size() != vectorB.size()) {
std::cout << "Vectors are not of the same size, cannot subtract." << std::endl;
return 0;
}
std::vector<double> difference;
difference.resize(vectorA.size()); // 初始化结果向量
// 对应位置的元素相减
for (size_t i = 0; i < vectorA.size(); ++i) {
difference[i] = vectorA[i] - vectorB[i];
}
// 打印结果
for (double num : difference) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
```
在这个例子中,我们首先检查两个`std::vector<double>`是否具有相同的大小,如果不同则无法直接相减。然后,我们遍历每个对应位置的元素,将第一个向量的值减去第二个向量的值,并把结果存储在新创建的`difference`向量中。
阅读全文