2015-04-23 90 views
-5

所以我有一個任務,因爲我的C++類在課堂上,我有一些麻煩。以下是對作業的描述:問題與我的學校作業類

編程挑戰7在您的文本的第499頁上要求您設計和庫存類,可以爲零售商店庫存中的物料提供信息。您將獲得創建該類的代碼以及用於實現這些功能的代碼。通過編寫一個使用它的簡單程序來演示該課程。該程序應該證明每個功能都能正常工作。使用提供的鏈接提交您的.cpp文件。

這裏是發送的文件的內容(這是相當漫長的):

// Chapter 7---Files for Programming Challenge 13---Inventory Class 

// This is the inventory.h file. 
// It contains the Inventory class declaration. 

#ifndef INVENTORY_H 
#define INVENTORY_H 

class Inventory 
{ 
private: 
    int itemNumber; 
    int quantity; 
    double cost; 
    double totalCost; 
public: 
    // Default constructor 
    Inventory() 
     { itemNumber = quantity = cost = totalCost = 0; } 

    // Overloaded constructor 
    Inventory(int, int, double); // Defined in Inventory.cpp 

    // Mutators (i.e., "set" functions) defined in Inventory.cpp 
    void setItemNumber(int); 
    void setQuantity(int); 
    void setCost(double); 

    // setTotalCost calculates the total cost 
    // and stores the result in the totalCost member 
    void setTotalCost() 
     { totalCost = cost * quantity; } 

    // Accessors (i.e., "get" functions) 
    int getItemNumber() 
     { return itemNumber; } 
    int getQuantity() 
     { return quantity; } 
    double getCost() 
     { return cost; } 
    double getTotalCost() 
     { return totalCost; } 

    // Input validation functions 
    bool validInt(int); 
    bool validFloat(double); 
}; 

#endif 

// This is the inventory.cpp file. 
// It contains the Inventory class function definitions. 

#include <iostream> 
#include "Inventory.h" 
using namespace std; 

//************************************************************ 
// Overloaded constructor 
// Accepts arguments to be stored in each member variable. 
//************************************************************ 
Inventory::Inventory(int in, int q, double c) 
{ 
    setItemNumber(in); 
    setQuantity(q); 
    setCost(c); 
    setTotalCost(); 
} 

//************************************************************ 
// setItemNumber accepts an argument to be stored in item number. 
//************************************************************ 
void Inventory::setItemNumber(int in) 
{ 
    while (!validInt(in)) 
    { 
     cout << "Item Number must be positive. Please re-enter: "; 
     cin >> in; 
    } 
    itemNumber = in; 
} 

//************************************************************ 
// setQuantity accepts an argument to be stored in quantity. 
//************************************************************ 
void Inventory::setQuantity(int q) 
{ 
    while (!validInt(q)) 
    { 
     cout << "Quantity must be positive. Please re-enter: "; 
     cin >> q; 
    } 
    quantity = q; 
} 

//************************************************************ 
// setCost accepts an argument to be stored in cost. 
//************************************************************ 
void Inventory::setCost(double c) 
{ 
    while (!validInt(c)) 
    { 
     cout << "Cost must be positive. Please re-enter: "; 
     cin >> c; 
    } 
    cost = c; 
} 

//************************************************************ 
// The validInt member tests its integer argument to see 
// if it is negative. If the argument is negative, the function 
// returns false. Otherwise, the function returns true. 
//************************************************************ 
bool Inventory::validInt(int value) 
{ 
    if (value < 0) // the value is negative so it is NOT valid 
     return false; 
    else    // the integer value is valid 
     return true; 
} 

//************************************************************ 
// The validFloat member tests its floating-point argument to see 
// if it is negative. If the argument is negative, the function 
// returns false. Otherwise, the function returns true. 
//************************************************************ 
bool Inventory::validFloat(double value) 
{ 
    if (value < 0) // the value is negative so it is NOT valid 
     return false; 
    else    // the floating-point value is valid 
     return true; 
} 

我只是不知道如何使用這些信息來演示類的程序,它可能是就像我一樣簡單,沒有以正確的方式保存文件

+1

你的問題到底是什麼? –

+1

代碼太多了,你還沒有問過我們可以回答的具體問題。如果您無法弄清楚如何開始作業,請向您的教師尋求幫助。這個網站是針對*特定問題*關於*您遇到的實際問題*;無法開始你的功課不是一個具體問題。你的導師顯然還沒有完成爲你提供足夠信息來完成這項工作的任務;請求他們獲得額外的幫助。這就是他們要付錢去做的事情。此外,你的頭銜沒有意義,因爲它沒有描述具體問題或提出問題。 –

+2

:(@ validFloat函數 –

回答

1

只需編寫一個main函數,它實例化一個對象並以有意義的方式調用它的每個方法。這不是一個難題,只是找到一種方法來調用對你有意義的函數。