All pastes #197243 Raw Edit

Unnamed

public cpp v1 · immutable
·published 2006-10-11 05:16 UTC
rendered paste body
#include <iostream>#include <string>#include <fstream> #include <sstream>using namespace std;using std::string;class Item {protected:    string itemName;    int itemID;    double itemCost;public:    Item (string name, int ID, double cost);    Item ();    void setItemCost(double itemCost);    double getItemCost();    void setItemID(int itemID);    int getItemID();    string getItemName();    void setItemName(string itemName);};Item::Item(string name, int ID, double cost){	itemName = name;	itemID = ID;	itemCost = cost;}Item::Item(){    //Do nothing}double Item::getItemCost() {	return itemCost;}void Item::setItemCost(double itemCost) {	itemCost = itemCost;}int Item::getItemID() {	return itemID;}void Item::setItemID(int itemID) {	itemID = itemID;}string Item::getItemName() {	return itemName;}void Item::setItemName(string itemName) {	itemName = itemName;}class Poster : public Item{	string posterArtist;	int posterYear;	int posterQuantity;public:    Poster(int ID, string name, string artist, int year, double price, int quan);    Poster();    void print();    string getPosterArtist();    void setPosterArtist(string posterArtist);    string getPosterName();	void setPosterName(string posterName);	double getPosterPrice();	void setPosterPrice(double posterPrice);    int getPosterQuantity();    void setPosterQuantity(int posterQuantity);    int getPosterYear();    void setPosterYear(int posterYear);};Poster::Poster():Item(){    // Do nothing}Poster::Poster(int ID, string name, string artist, int year, double price, int quan):Item(name, ID, price)	{		posterArtist = artist;		posterYear = year;		posterQuantity = quan;		itemName = name;		itemCost = price;		itemID = ID;	}void Poster::print()	{		cout << "ID:\t" << itemID << "\n";		cout << "Name:\t" << itemName << "\n";		cout << "Artist:\t" << posterArtist << "\n";		cout << "Year:\t" << posterYear << "\n";		cout << "Price:\t" << itemCost << "\n";		cout << "Quan:\t" << posterQuantity << "\n";	}string Poster::getPosterArtist() {		return posterArtist;	}void Poster::setPosterArtist(string posterArtist) {		posterArtist = posterArtist;	}string Poster::getPosterName() {		return itemName;	}void Poster::setPosterName(string posterName) {		itemName = posterName;	}double Poster::getPosterPrice() {		return itemCost;	}void Poster::setPosterPrice(double posterPrice) {		itemCost = posterPrice;	}int Poster::getPosterQuantity() {		return posterQuantity;	}void Poster::setPosterQuantity(int posterQuantity) {		posterQuantity = posterQuantity;	}int Poster::getPosterYear() {		return posterYear;	}void Poster::setPosterYear(int posterYear) {		posterYear = posterYear;	}double parseDouble(const std::string& s) {   std::istringstream i(s);   double x;   if (!(i >> x))     cout << "something went wrong\n";   return x; }int parseInt(const std::string& s) {   std::istringstream i(s);   int x;   if (!(i >> x))     cout << "something went wrong\n";   return x; }void readPosters(const std::string& file, Poster PosterList[]){    ifstream infile(file.c_str());    cout << file << "\n";    int count = 0;    if(infile.is_open())    {        string line = NULL;        char * tokens;        while(!infile.eof())        {            getline(infile,line);            tokens = strtok((char*)line.c_str(), ",");            while(tokens != NULL)            {                int ID = parseInt(tokens);                tokens = strtok(NULL, ",");                string name = tokens;                tokens = strtok(NULL, ",");                string artist = tokens;                tokens = strtok(NULL, ",");                int year = parseInt(tokens);                tokens = strtok(NULL, ",");                double price = parseDouble(tokens);                tokens = strtok(NULL, ",");                int quan = parseInt(tokens);                tokens = strtok(NULL, ",");                PosterList[count] = Poster(ID, name, artist, year, price, quan);                PosterList[count].print();                count++;            }            count++;        }    }}int main(){	std::cout << "Hello world!" << std::endl;	Poster PosterList[50];	readPosters("poster_input.txt", PosterList);	return 0;}