我需要帮助在类中创建一个分数列表数组。 所以我可以说我已经有了一个带有private:numerator和denom的分数类。
所以我想在这个分数列表类中做的是
我应该能够读取包含这样一个列表的文件。 “22 51 3 5 11 43 34 54”第一个是分子,第二个是denom,依此类推。所以它有4个分数。我希望将这4个分数存储在作为私有成员的数组中。最多为20个分数。
我应该可以打印到输出文件或标准输出以下内容: a)所有分数。 b)分数形式的所有分数的总和(例如:分子:55,分母:82)
我真正想知道的是我的私人数据成员应该是什么?
这就是我所拥有的。
class Fractionlist
{
Private:
Fractionlist [] Max;
const static int MaxFraction = 30;
}
要设置哪个私有成员,所以我会按照要求进行操作。所以基本上我需要允许我输入分数的数据成员。
答案 0 :(得分:2)
扩展juanchopanza的评论,你可能想要创建一个类似于这个的类:
class MyFraction
{
public:
MyFraction(int numerator, int denominator)
{
_numerator = numerator;
_denominator = denominator;
}
void Print()
{
// ...
}
private:
int _numerator;
int _denominator;
};
然后从文件中读取数字并将它们存储在矢量
中std::vector<MyFraction> fractionList;
最后,实现两个功能
void PrintFractions(std::vector<MyFraction> fractionList);
MyFraction SumFractions(std::vector<MyFraction> fractionList);
分别打印和求和矢量的内容。
答案 1 :(得分:0)
从你所描述的内容来看,我很想接受这样的事情:
class Fraction
{
int numerator;
int denominator;
};
class Fractionlist
{
const static int MaxFraction = 20;
int number_of_fractions; // how many are in the array?
private:
Fraction list[MaxFraction]; // array of Fraction objects
public:
Fractionlist(): number_of_fractions(0) {} // list is empty when created
bool add(const Fraction& f) { /* add fraction return false if too may */ }
Fraction sum() { /* add up fractions and return */ }
};
假设您无法使用标准库容器。