Итак, я должен написать программу, в которой num и denom являются целочисленными элементами данных класса Fractions. Я также должен иметь функции-члены, которые могут отображать значения данных объекта, и перегруженную операторную функцию для +. Моя программа говорит, что мои элементы с индексами имеют недопустимый тип данных, но я не знаю, как разрешить вторую часть без них. Кто-нибудь знает, как я могу это исправить? Мой код следующий:
#include <iostream>
#include <cmath>
using namespace std;
int a, b, c;
class Fractions
{
private:
int num;
int denom;
public:
Fractions(int=1, int=1);
void operator!(void) const;
Fractions operator+(const Fractions&) const;
};
Fractions::Fractions(int n, int d)
{
if( d != 0)
num= n;
denom= d;
}
Fractions Fractions::operator+(const Fractions& f) const
{
a= num/denom;
b= num[1]/denom[1];
c= a + b;
c= (num * denom[1]+ denom * num[1])/(denom * denom[1]);
return c;
}
int main()
{
return 0;
}
num[1]
иdenom[1]
будут недействительными, поскольку они не относятся к типуarray
. - person songyuanyao   schedule 17.03.2014