我可能在这里没有正确使用cin
,但有人可以告诉我为什么这个小程序不能运行并产生任何输出?
#include <iostream>
using namespace std;
class Vector {
public:
Vector(int s) :elem{new double[s]}, sz{s} {}
~Vector() { delete[] elem; } //added this
double& operator[](int i) { return elem[i]; }
int size() { return sz; }
private:
double *elem;
int sz;
};
double read_and_sum(int s) {
Vector v(s);
for (int i=0; i != v.size(); ++i)
//cin>>v[i];
v[i]=s;
cout<<"s = "<<s<<"\n";
double sum = 0;
for (int i=0; i != v.size(); ++i)
sum+=v[i];
return sum;
}
int main()
{
int i = 0;
cout<<"Please enter an integer: ";
cin >> i;
cout<<"Sum = "<<read_and_sum(i)<<"\n";
}
答案 0 :(得分:0)
该程序完美无缺。我个人认为你输错了号码。如果你实际编写了代码,你会知道它是如何工作的,但是你说你是新手,但我不认为有人无法理解某人如何无法正确阅读代码能够做到向量。