Я знаю, что это не тот вопрос, который нужно задавать, но из-за жизни я не мог понять, что является причиной этой проблемы.
Мне нужно написать задачу, для которой нужно задать числоцелых или двойных чисел и возвращает их сумму.
Я написал код, чтобы сделать эту работу, проверяя каждый раз, когда я что-то изменил.
#include<iostream>
using namespace std;
template <class T>
class totalClass
{
private:
T *p;
T Total;
T sum;
int size;
public:
T total(int x)
{
size = x;
p = new T[x];
for (int i = 0; i < size; i++)
p[i] = T();
if (size > 1)
{
for (int i = 0; i < size; ++i)
{
cin >> sum;
Total += sum;
}
}
return Total;
}
};
int main()
{
int size, result1;
double result2;
cout << "Enter: ";
cin >> size;
cout << "the number of ints you wish to enter: Enter: " << size << " integers:";
totalClass<int> test;
result1 = test.total(size);
cout << " Total = " << result1 << endl;
cout << "Enter: ";
cin >> size;
cout << "the number of doubles you wish to enter: Enter: " << size << " doubles:";
totalClass<double> test2;
result2 = test2.total(size);
cout << " Total = " << result2 << endl;
}
Мои двойники складываютсяправильно, но мое целочисленное сложение всегда складывается в какое-то безумное число.Что-то не так с моей проблемой, которую я не вижу?