2014-10-01 49 views
0

我需要幫助在類中創建分數列表數組。 因此,讓我們說我已經有一個私人分數類:分子和denom。在類中創建分數列表數組| C++

那麼我猜想這fractionlist類中做的是

  1. 我應該能夠讀取包含這樣的列表中的文件。 「22 51 3 5 11 43 34 54」,第一個是分子,第二個是denom,等等。所以它有4個分數。我希望這4個分數存儲在私有成員的數組中。最大值是20個分數。

  2. 我應該能夠打印到輸出文件或標準輸出以下內容: a)所有分數。分子:b)以分數的形式(例如,所有的分數總和55,分母:82)

我真的只是想知道什麼是應該我的私有數據成員呢?

這是我所擁有的。

class Fractionlist 
{ 
Private: 
    Fractionlist [] Max; 
    const static int MaxFraction = 30; 

} 

哪個私人成員的功能設置,所以我做什麼問。所以基本上我需要那些允許我輸入分數的數據成員。

+3

編寫一個分數類並將分數存儲在任何一個標準庫容器中是否更有意義?此外,您展示的代碼不是C++。 – juanchopanza 2014-10-01 19:56:24

+0

由於您知道每個列表有4個分數,只需使用'Fractionlist Max [4]' – texasbruce 2014-10-01 20:00:38

+0

那麼分數列表在不同的.h中完成,它們都在不同的文件中,如.cpp/.h。我不知道,那是我的任務,在不同的.h文件中創建一個Fractionlist類。 – user3387140 2014-10-01 20:12:14

回答

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); 

要打印和求和矢量的內容, spectively。

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 */ } 
}; 

假設你不能使用標準庫容器。